아두이노 나노 - DIP 스위치 | Arduino Nano - DIP Switch
Dual In-line Package (DIP) 스위치는 장치 주소, 통신 설정, 보안 코드, 작동 모드 등 구성 작업에 전자 제품에서 자주 사용됩니다. 이 튜토리얼에서는 Arduino Nano에서 DIP 스위치를 사용하는 방법에 대해 자세히 설명할 것입니다. 구체적으로 다룰 내용은 다음과 같습니다:
- DIP 스위치와 그 작동 원리 이해하기.
- DIP 스위치와 아두이노 나노 사이의 연결 설정하기.
- DIP 스위치의 ON/OFF 상태를 읽기 위해 아두이노 나노를 프로그래밍하기.
- DIP 스위치에 의해 설정된 정수 값을 해석하기 위해 아두이노 나노를 프로그래밍하기.
준비물
1 | × | Arduino Nano | Amazon | |
1 | × | USB A to Mini-B USB cable | 쿠팡 | Amazon | |
1 | × | DIP Switch | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) 9V Power Adapter for Arduino Nano | Amazon | |
1 | × | (Recommended) Screw Terminal Expansion Board for Arduino Nano | 쿠팡 | Amazon |
DIP 스위치 정보
DIP 스위치는 주로 장치를 구성하는 데 사용되며, 사용자가 여러 산업 및 응용 분야에서 장치 주소, 통신 설정, 보안 코드, 운영 모드 및 시스템 기본 설정과 같은 매개 변수를 설정할 수 있는 기능을 제공합니다.
DIP 스위치는 함께 묶인 여러 개의 작은 슬라이드 스위치로 구성되어 있으며, 각 슬라이드 스위치를 "위치"라고 합니다. DIP 스위치는 가지고 있는 위치의 수에 따라 다양한 유형이 있습니다. 예를 들어, 2-위치, 4-위치, 5-위치, 6-위치, 8-위치, 10-위치 DIP 스위치가 있습니다.
DIP 스위치의 각 위치는 숫자의 구성 가능한 비트를 나타냅니다. 위치를 켜짐(ON)과 꺼짐(OFF) 사이에서 전환함으로써 원하는 숫자 값을 설정할 수 있습니다.
핀배열
DIP 스위치는 각 열의 핀 수가 사용 가능한 스위치 위치와 일치하는 두 줄의 핀으로 구성됩니다. 예를 들어, 4-포지션 DIP 스위치에는 양쪽에 각각 4개의 핀이 있어 총 8개의 핀이 동등하게 분배됩니다. DIP 스위치의 조립에서는 반대편의 핀 세트마다 슬라이드 스위치를 형성합니다. 중요한 점은 양쪽의 핀을 구분할 필요가 없으며 서로 교환될 수 있다는 것입니다.
작동 원리
DIP 스위치에서 스위치가 ON 위치에 있으면 스위치가 연결되었거나 닫혔음을 나타냅니다. 이는 전기 연결이 이루어져 스위치를 통해 전류가 통과할 수 있음을 의미합니다.
반대로, 스위치가 꺼진 상태에 있을 때는 스위치가 분리되었거나 열려 있다는 것을 의미합니다. 이 상태에서는 전기적 연결이 끊어져 스위치를 통해 전류가 흐르지 않습니다.
요약하자면:
- ON 위치: 회로가 닫혀 전류 흐름을 허용합니다.
- OFF 위치: 회로가 열려 전류 흐름을 차단합니다.
스위치 한쪽을 GND에, 다른 한쪽을 아두이노 나노 핀에 연결한 다음, 아두이노 나노 핀을 풀업 디지털 입력으로 설정하면, 아래 표는 스위치 위치와 아두이노 나노에서 읽은 값 간의 관계를 보여줍니다:
DIP switch position | Binary representation | Circuit state | Arduino Nano pin state |
---|---|---|---|
ON | 1 | CLOSED | LOW |
OFF | 0 | OPEN | HIGH |
다음 부분에서는 예시로 4포지션 DIP 스위치를 사용할 것입니다. 2포지션 DIP 스위치, 3포지션 DIP 스위치, 5포지션 DIP 스위치, 6포지션 DIP 스위치, 8포지션 DIP 스위치, 10포지션 DIP 스위치 등으로 쉽게 적용할 수 있습니다...
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노 나노 코드 - DIP 스위치
우리는 두 개의 코드를 통해 배울 것입니다:
- DIP 스위치의 개별 위치의 ON/OFF 상태를 읽기.
- 위치를 숫자로 인코딩하기.
아두이노 나노 코드 - DIP 스위치의 ON/OFF 상태 읽기
사용 방법
- 위의 배선도대로 배선하세요
- 아두이노 나노를 USB 케이블을 통해 PC에 연결하세요
- 아두이노 IDE를 실행하세요
- 올바른 보드와 포트를 선택하세요
- 아두이노 IDE에서 Upload 버튼을 클릭하여 아두이노 나노에 코드를 업로드하세요
- DIP 스위치의 각 위치를 하나씩 켜세요
- 시리얼 모니터에서 결과를 확인하세요
아두이노 나노 코드 - DIP 스위치의 상태를 숫자로 인코딩하기
사용 방법
- 위의 코드를 아두이노 나노에 업로드하세요.
- DIP 스위치의 각 위치를 하나씩 켜세요.
- 시리얼 모니터에서 결과를 확인하세요, 아래와 같아 보일 겁니다.
각 슬라이드 스위치의 위치에 따라 값이 달라짐을 유의하십시오. 아래 표는 4-위치 DIP 스위치의 켜짐/꺼짐 위치와 정수 값의 매핑을 보여줍니다:
Position-1 | Position-2 | Position-3 | Position-4 | Binary Value | Decimal Value |
---|---|---|---|---|---|
OFF | OFF | OFF | OFF | 0000 | 0 |
OFF | OFF | OFF | ON | 0001 | 1 |
OFF | OFF | ON | OFF | 0010 | 2 |
OFF | OFF | ON | ON | 0011 | 3 |
OFF | ON | OFF | OFF | 0100 | 4 |
OFF | ON | OFF | ON | 0101 | 5 |
OFF | ON | ON | OFF | 0110 | 6 |
OFF | ON | ON | ON | 0111 | 7 |
ON | OFF | OFF | OFF | 1000 | 8 |
ON | OFF | OFF | ON | 1001 | 9 |
ON | OFF | ON | OFF | 1010 | 10 |
ON | OFF | ON | ON | 1011 | 11 |
ON | ON | OFF | OFF | 1100 | 12 |
ON | ON | OFF | ON | 1101 | 13 |
ON | ON | ON | OFF | 1110 | 14 |
ON | ON | ON | ON | 1111 | 15 |
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.