아두이노 - 스위치 | Arduino - Switch

ON/OFF 스위치, 토글 스위치라고도 불립니다, 는 ON(닫힘)과 OFF(열림)의 두 상태를 가집니다. ON/OFF 스위치의 상태는 눌릴 때마다 ON/OFF 사이에서 토글되며, 놓아도 상태가 유지됩니다. 이 튜토리얼에서는 아두이노와 함께 ON/OFF 스위치를 사용하는 방법을 배울 것입니다.

Arduino ON/OFF Switch

다음과 혼동하지 말아주세요:

준비물

1×Arduino Uno Amazon
1×USB 2.0 cable type A/B 쿠팡 | Amazon
1×Wires Amazon
1×ON/OFF Square Switch Amazon
1×(Alternative) ON/OFF Round Switch Amazon
1×(Optional) Heat Shrink Tubing Amazon
1×(Optional) Soldering Iron Amazon
1×(Optional) 9V Power Adapter for Arduino Amazon
1×(Recommended) Screw Terminal Block Shield for Arduino Uno 쿠팡 | Amazon
1×(Recommended) Breadboard Shield For Arduino Uno 쿠팡 | Amazon
1×(Recommended) Enclosure For Arduino Uno Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

ON/OFF 스위치에 대하여

ON/OFF 스위치는 눌렀을 때 상태(ON에서 OFF로, 또는 OFF에서 ON으로)가 변경되고, 놓아도 그 상태를 유지하는 스위치입니다. 상태를 변경하려면 다시 눌러야 합니다.

핀배열

ON/OFF 스위치는 기본적으로 두 가지 유형이 있습니다: 이핀 스위치와 삼핀 스위치

이 튜토리얼에서는 두 핀 스위치를 사용할 것입니다. 이 유형에서는 두 핀을 구별할 필요가 없습니다.

ON/OFF Switch Pinout

작동 원리

ON/OFF 스위치를 사용하는 방법은 두 가지가 있습니다. 아래는 ON/OFF 스위치의 배선 표이며, 두 가지 방법 모두에서 아두이노에서의 읽기 상태입니다:

pin 1 pin 2 Arduino Input Pin's State
1 GND Arduino Input Pin (with pull-up) HIGH OFF, LOW ON
2 VCC Arduino Input Pin (with pull-down) HIGH ON, LOW OFF

위의 두 가지 방법 중 하나만 선택하면 됩니다. 나머지 튜토리얼은 첫 번째 방법을 사용할 것입니다.

선연결

Arduino ON/OFF Switch Wiring Diagram

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

배선 연결을 안정적이고 견고하게 하기 위해, 솔더링 아이언을 사용하여 전선과 ON/OFF 스위치의 핀을 함께 납땜하고, 그 다음에 열 수축 튜브를 사용하여 안전하게 만드는 것을 추천합니다.

아두이노 코드 - 온/오프 스위치

버튼처럼 ON/OFF 스위치도 디바운스(debounce)가 필요합니다 (버튼, ON/OFF 스위치에 왜 디바운스가 필요한가요?에서 더 알아보세요). 디바운싱은 코드를 복잡하게 만듭니다. 다행히도, ezButton 라이브러리는 디바운싱 기능을 지원하며, 내부 풀업 저항도 사용합니다. 이러한 기능들이 우리가 프로그래밍하는데 용이하게 합니다.

※ NOTE THAT:

다음은 널리 사용되는 두 가지 사용 사례입니다:

  • 첫 번째: 스위치의 상태가 켜짐(ON)이면 어떤 작업을 수행합니다. 입력 상태가 꺼짐(OFF)이면 반대로 다른 작업을 수행합니다.
  • 두 번째: 스위치의 상태가 켜짐(ON)에서 꺼짐(OFF)으로 변경되거나(또는 꺼짐에서 켜짐으로), 어떤 작업을 수행합니다.
/* * 이 Arduino 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino/arduino-switch */ #include <ezButton.h> ezButton toggleSwitch(7); // 핀 7에 연결된 ezButton 객체 생성; void setup() { Serial.begin(9600); toggleSwitch.setDebounceTime(50); // 디바운스 시간을 50 밀리초로 설정 } void loop() { toggleSwitch.loop(); // 먼저 loop() 함수를 반드시 호출해야함 if (toggleSwitch.isPressed()) Serial.println("The switch: OFF -> ON"); if (toggleSwitch.isReleased()) Serial.println("The switch: ON -> OFF"); int state = toggleSwitch.getState(); if (state == HIGH) Serial.println("The switch: OFF"); else Serial.println("The switch: ON"); }

사용 방법

  • 위의 배선도대로 배선하세요.
  • 아두이노를 USB 케이블을 통해 PC에 연결하세요.
  • 아두이노 IDE를 엽니다.
  • EzButton 라이브러리를 설치하세요. 방법 보기
  • 올바른 보드와 포트를 선택하세요.
  • 아두이노 IDE에서 Upload 버튼을 클릭하여 코드를 아두이노에 업로드하세요.
  • 스위치를 켜세요.
  • 시리얼 모니터에서 결과를 확인하세요.
  • 그다음 스위치를 끄세요.
  • 시리얼 모니터에서 결과를 확인하세요.
COM6
Send
The switch: OFF The switch: OFF The switch: OFF The switch: OFF -> ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON -> OFF The switch: OFF The switch: OFF The switch: OFF
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

동영상

비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!