ESP8266 - LED - 딜레이 없이 깜박임 | ESP8266 - LED - Blink Without Delay
우리가 ESP8266이 LED를 깜박이는 일과 언제든 눌릴 수 있는 버튼의 상태를 모니터링하는 두 가지 작업을 수행해야 한다고 상상해 봅시다. 만약 delay() 함수를 사용한다면(이전 튜토리얼에서 설명한 것처럼 [BASE_URL/tutorials/esp8266/esp8266-led]), ESP8266은 일부 버튼 누름을 놓칠 수 있습니다. 다시 말해, ESP8266은 두 번째 작업을 완전히 수행할 수 없게 됩니다.
이 튜토리얼은 ESP8266이 LED를 깜박이게 하고 버튼의 상태를 놓치지 않고 모니터링하는 방법을 알려줍니다.
우리는 세 가지 예를 살펴보고 그들 사이의 차이점을 비교할 것입니다:
- delay() 함수를 사용하여 ESP8266이 LED를 깜박이기
- millis() 함수를 사용하여 ESP8266이 LED를 깜박이기
- ezLED 라이브러리를 사용하여 ESP8266이 LED를 깜박이기
이 방법은 LED를 깜박이고 버튼의 상태를 확인하는 것에만 국한되지 않습니다. 일반적으로 ESP8266이 서로를 차단하지 않고 여러 작업을 동시에 수행할 수 있게 합니다.
준비물
1 | × | ESP8266 NodeMCU | Amazon | |
1 | × | Micro USB Cable | 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) 5V Power Adapter for ESP8266 | Amazon | |
1 | × | (Optional) Screw Terminal Expansion Board for ESP8266 | 쿠팡 | Amazon |
LED와 버튼에 대하여
LED와 버튼(핀 배치, 기능성, 프로그래밍 등)에 익숙하지 않다면, 다음 튜토리얼이 도움이 될 수 있습니다:
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266의 핀 배치 및 ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.
ESP8266 코드 - 지연 시간 포함
사용 방법
Arduino IDE에서 ESP8266을 시작하는 방법은 다음과 같은 단계를 따르세요:
- ESP8266을 Arduino IDE에서 설정하는 방법에 대해 처음인 경우 ESP8266 소프트웨어 설치 튜토리얼을 확인하세요.
- 다이어그램에 표시된 대로 구성 요소를 연결하세요.
- USB 케이블을 사용하여 ESP8266 보드를 컴퓨터에 연결하세요.
- 컴퓨터에서 Arduino IDE를 엽니다.
- 올바른 ESP8266 보드를 선택하세요. 예를 들어, NodeMCU 1.0 (ESP-12E Module)과 해당 COM 포트를 선택하세요.
- USB 케이블을 ESP8266과 PC에 연결하세요.
- Arduino IDE를 실행하여 올바른 보드와 포트를 선택하세요.
- 코드를 복사하여 Arduino IDE에서 엽니다.
- Arduino IDE에서 Upload 버튼을 클릭하여 코드를 컴파일하고 ESP8266에 업로드하세요.
- 시리얼 모니터를 엽니다.
- 버튼을 네 번 누릅니다.
- LED를 확인하세요; 1초마다 켜졌다 꺼졌다 합니다.
- 시리얼 모니터에서 출력을 확인하세요.
시리얼 모니터에서, 몇몇 누름 시간이 등록되지 않았습니다. 이는 ESP8266이 지연 상태인 동안 어떠한 작업도 수행할 수 없기 때문입니다. 결과적으로, 누름 이벤트를 감지할 수 없습니다.
ESP8266 코드 - 지연 없이
사용 방법
- 다이어그램에 표시된 대로 구성요소를 연결하세요.
- USB 케이블을 사용하여 ESP8266 보드를 컴퓨터에 연결하세요.
- 컴퓨터에서 Arduino IDE를 엽니다.
- 올바른 ESP8266 보드를 선택하세요. 예를 들어, (NodeMCU 1.0 (ESP-12E Module))와 해당 COM 포트를 선택합니다.
- 코드를 실행하고 버튼을 4번 누르세요.
- LED를 확인하세요. 1초 간격으로 규칙적으로 켜지고 꺼집니다.
- 시리얼 모니터에서 출력을 확인하세요.
모든 긴급한 문제들이 식별되었습니다.
코드 설명
소스 코드의 주석에 포함된 줄별 설명을 확인하세요!
더 많은 작업 추가하기
아래의 ESP8266 코드는 다음과 같습니다:
- 두 개의 LED를 다른 간격으로 깜빡입니다.
- 버튼의 상태를 확인합니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.
확장성
이 방법은 ESP8266이 여러 작업을 동시에 수행할 수 있게 해줍니다. 한 작업이 다른 작업을 차단하지 않고요. 예를 들어, 인터넷에 요청을 보내고 응답을 기다리는 동안 LED 표시등을 깜박이고 취소 버튼을 모니터링하는 것입니다.