ESP32 - LED - 지연 없이 깜박임 | ESP32 - LED - Blink Without Delay
초보자들이 처음으로 실행하는 프로그램 중 하나는 LED를 깜박이는 것입니다. LED를 깜박이는 가장 간단한 방법은 delay() 함수를 사용하는 것입니다. 이 함수는 ESP32가 다른 일을 하는 것을 차단합니다. 단 하나의 LED만 깜박이고 싶다면 괜찮습니다. 하지만, 더 많은 LED를 깜박이거나, 병렬로 다른 작업을 하고 싶다면 delay() 함수를 사용할 수 없습니다. 우리는 다른 해결책이 필요합니다. 이 튜토리얼은 delay 함수를 사용하지 않고 여러 작업을 하는 방법을 안내합니다. 더 구체적으로, 우리는 LED를 깜박이면서 버튼의 상태를 확인하는 방법을 배울 것입니다.
아래에 나열된 세 가지 예시를 통해 실행해보고 그 차이점을 비교해 보겠습니다.
- ESP32는 delay() 함수를 사용하여 LED를 깜박입니다.
- ESP32는 millis() 함수를 사용하여 LED를 깜박입니다.
- ESP32는 ezLED 라이브러리를 사용하여 LED를 깜박입니다.
이 방법은 ESP32가 동시에 여러 작업을 수행하게 할 수 있습니다. LED를 깜박이는 것은 그저 하나의 예시일 뿐입니다.
준비물
1 | × | ESP-WROOM-32 Dev Module | 쿠팡 | Amazon | |
1 | × | USB Cable Type-C | 쿠팡 | Amazon | |
1 | × | LED | Amazon | |
1 | × | 220 ohm resistor | Amazon | |
1 | × | Push Button | 쿠팡 | Amazon | |
1 | × | (Optional) Panel-mount Push Button | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) DC Power Jack | 쿠팡 | Amazon | |
1 | × | (Recommended) Screw Terminal Expansion Board for ESP32 | 쿠팡 | Amazon |
LED와 버튼에 대하여
우리는 LED와 버튼에 관한 특정 튜토리얼을 가지고 있습니다. 각 튜토리얼은 하드웨어 핀배열, 작동 원리, ESP32에 대한 배선 연결, ESP32 코드 등에 관한 자세한 정보와 단계별 지침을 포함하고 있습니다. 다음 링크에서 자세한 내용을 알아보세요:
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP32 및 다른 구성 요소에 전원을 공급하는 방법에 대해 잘 알지 못하는 경우, 다음 튜토리얼에서 안내를 찾을 수 있습니다: ESP32 전원 공급 방법.
delay() 함수를 사용하고 사용하지 않고 LED를 깜박이는 ESP32 코드를 비교해 봅시다
ESP32 코드 - 지연 시간 포함
사용 방법
- ESP32를 처음 사용하는 경우, Arduino IDE에서 ESP32 환경 설정하는 방법을 참조하세요.
- 위 이미지와 같이 배선하세요.
- ESP32 보드를 마이크로 USB 케이블로 PC에 연결하세요.
- PC에서 Arduino IDE를 엽니다.
- 올바른 ESP32 보드(예: ESP32 Dev Module)와 COM 포트를 선택하세요.
- 위 코드를 복사하여 Arduino IDE에 붙여넣으세요.
- Arduino IDE에서 Upload 버튼을 클릭하여 ESP32 보드에 코드를 컴파일하고 업로드하세요.
Arduino IDE에서 시리얼 모니터 열기
- 버튼을 4번 누르세요
- LED를 보세요: LED는 매초 주기적으로 ON/OFF가 전환됩니다
- 시리얼 모니터에서 출력을 확인하세요
시리얼 모니터에서는 상태가 0(4번 누름)으로 변경되는 것을 충분히 네 번 볼 수 없습니다. 지연 시간 동안 ESP32는 변경 사항을 감지할 수 없기 때문입니다.
ESP32 코드 - 지연 없음
사용 방법
- ESP32를 처음 사용하는 경우, Arduino IDE에서 ESP32 환경 설정하는 방법을 참고하세요.
- 위의 코드를 실행하고 버튼을 4번 누르세요.
- LED를 확인하세요: LED가 매초마다 ON/OFF로 주기적으로 전환됩니다.
- 시리얼 모니터에서 출력을 확인하세요.
모든 중요한 사건이 감지되었습니다.
코드 설명을 줄 단위로 변역하세요
위의 ESP32 코드에는 줄별 설명이 포함되어 있습니다. 코드의 주석을 읽어 주세요!
더 많은 작업 추가하기
아래 코드는 두 개의 LED를 다른 간격으로 깜박이게 하고 버튼의 상태를 확인합니다.
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.