아두이노 나노 ESP32 - 터치 센서 | Arduino Nano ESP32 - Touch Sensor

이 튜토리얼은 터치 센서(터치 스위치 또는 터치 버튼으로도 알려져 있음)와 함께 아두이노 나노 ESP32를 사용하는 방법에 대한 지침을 제공합니다.

준비물

1×Arduino Nano ESP32 Amazon
1×USB Cable Type-C 쿠팡 | Amazon
1×Touch Sensor 쿠팡 | Amazon
1×Breadboard 쿠팡 | Amazon
1×Jumper Wires Amazon
1×(Optional) DC Power Jack 쿠팡 | Amazon
1×(Recommended) Screw Terminal Expansion Board for Arduino Nano 쿠팡 | Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

터치 센서에 대하여

터치 센서 핀배열

터치 센서는 3개의 핀이 있습니다:

  • GND 핀: 이 핀을 GND(0V)에 연결하세요.
  • VCC 핀: 이 핀을 VCC(5V 또는 3.3V)에 연결하세요.
  • SIGNAL 핀: 출력 핀입니다: 만지지 않았을 때는 LOW, 만졌을 때는 HIGH입니다. 이 핀은 ESP32의 입력 핀에 연결되어야 합니다.
Touch Sensor Pinout

터치 센서 작동 원리

  • 터치 센서에 접촉하지 않았을 때 SIGNAL 핀의 상태는 LOW입니다.
  • 터치 센서에 접촉했을 때 SIGNAL 핀의 상태는 HIGH입니다.

아두이노 나노 ESP32 - 터치 센서

터치 센서의 SIGNAL 핀을 ESP32의 입력 핀에 연결하고 Arduino Nano ESP32 코드를 사용하여 터치 센서의 상태를 읽을 수 있습니다.

터치 센서와 아두이노 나노 ESP32 간의 배선도

Arduino Nano ESP32 Touch Sensor Wiring Diagram

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

터치 센서 프로그래밍 방법

Arduino Nano ESP32의 핀을 디지털 입력 모드로 초기화하려면 pinMode() 함수를 사용합니다. 예를 들어, D2 핀

pinMode(D2, INPUT);

digitalRead() 함수를 사용하여 Arduino Nano ESP32 핀의 상태를 읽습니다.

int inputState = digitalRead(D2);

터치 센서 - 아두이노 나노 ESP32 코드

아래 코드는 터치 센서의 상태를 읽고 시리얼 모니터에 출력합니다.

/* * 이 Arduino Nano ESP32 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino Nano ESP32 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-nano-esp32/arduino-nano-esp32-touch-sensor */ #define SENSOR_PIN D2 // 아두이노 나노 ESP32 핀이 터치 센서의 SIGNAL 핀에 연결됩니다. void setup() { // 시리얼 모니터와 통신하기 위해 시리얼을 초기화합니다. Serial.begin(9600); // ESP32의 핀을 입력으로 초기화합니다. pinMode(SENSOR_PIN, INPUT); } void loop() { // 입력 핀의 상태를 읽습니다: int state = digitalRead(SENSOR_PIN); // 시리얼 모니터에 상태를 출력합니다. Serial.println(state); }

사용 방법

  • 아두이노 나노 ESP32를 처음 사용하는 경우, 아두이노 IDE에서 아두이노 나노 ESP32 환경 설정하는 방법을 참조하세요.
  • 위의 코드를 복사하여 아두이노 IDE에 붙여넣으세요.
  • 아두이노 IDE의 Upload 버튼을 클릭하여 아두이노 나노 ESP32 보드에 코드를 컴파일하고 업로드하세요.
  • 센서에 손가락을 대고 떼세요.
  • 시리얼 모니터에서 결과를 확인하세요. 결과는 아래와 같습니다:
COM6
Send
0 0 0 1 1 1 1 1 1 0 0
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

LOW에서 HIGH로의 상태 변경 감지 방법

/* * 이 Arduino Nano ESP32 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino Nano ESP32 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-nano-esp32/arduino-nano-esp32-touch-sensor */ #define SENSOR_PIN D2 // 아두이노 나노 ESP32 핀이 터치 센서의 SIGNAL 핀에 연결됨 int prev_state = LOW; // 입력 핀에서의 이전 상태 int touch_state; // 입력 핀에서의 현재 읽기 void setup() { // 직렬 통신을 사용하여 시리얼 모니터와 통신을 초기화합니다. Serial.begin(9600); // ESP32의 핀을 입력으로 초기화합니다. pinMode(SENSOR_PIN, INPUT); } void loop() { // 입력 핀의 상태를 읽습니다: touch_state = digitalRead(SENSOR_PIN); if (prev_state == LOW && touch_state == HIGH) Serial.println("The sensor is touched"); // 마지막 상태를 저장합니다 prev_state = touch_state; }

동영상

비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, 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!