모든 마이크로컨트롤러의 Hello World! 는 LED 제어이다.
아마존에서 구입했는데, 하나에 699엔...
ESP를 7천 원대에 살 수 있다는 것에 좀 놀랐다.
시스템을 만들 때 숫자로 승부해도 되겠다.
보드의 세팅은 아래와 같이 했는데 [ESP32-WROOM-32D] 랑 별반 다른 게 없다.
본인 컴퓨터 USB에서 인식이 잘 안 되시는 분은 드라이버가 설치되어 있지 않은 경우가 많으니
이 블로그의 이전 글을 찾아 주시면 되겠다.
https://fermium.tistory.com/1200
프로그램은 일반적인 [Blink] 예제 소스코드를 쓰면 되는데,
이 보드의 LED 핀 번호는 2번 이므로 아래와 같이 프로그래밍해 준다.
(아두이노 IDE에서 핀번호가 사전에 설정되어 있는 보드도 있다: https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink)
빨간색 글씨가 이번에 추가해 준 부분이다.
int LED_BUILTIN = 2; // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } |
그리고 프로그램 업로드를 하는데
아래와 같이 Connecting 에서 더 이상 진행이 안되고 에러가 나는 경우에는,
보드에 있는 [BOOT] 버튼을 눌러 주면 업로드가 가능해진다.
업로드하고 나면 LED가 깜빡이는 것을 볼 수 있다.
예산 때문에 엄두가 안 났던 센서 네트워크도 만들어 볼 수 있겠는걸?
보드 종류가 많다 보니까 가끔씩 업로드 설정 같은 게 헷갈릴 때가 많아서 여기에 기록을 남겨둔다.
참고로 아래와 같이 USB-C 타입의 보드도 있었다.
그리고 30핀 전용 확장 쉴드도 존재한다.
알리에서 구매하니까 가격이 저렴하긴 한데
납땜질이 엉망이라서 핀이 뒤죽박죽인 경우도 있다.