기기 코딩 26 / 31
컴퓨터에서 명령 보내 LED 켜기
시리얼 모니터에 1을 보내면 켜지고 0을 보내면 꺼져요. 화면 프로그램과 보드가 대화하는 원리예요.
지금까지는 보드가 컴퓨터에 글자를 보냈어요. 이번엔 반대로 컴퓨터가 보드에 명령을 보내요. 나중에 AI 작업실에서 만든 화면의 버튼이 보드를 움직이는 것도 바로 이 방법이에요.
| 부품 다리 | 아두이노 Uno | ESP32 |
|---|---|---|
| 보드 핀 → 220Ω → LED 긴 다리, 짧은 다리 → GND | 10번 | GPIO 25 |
// 1을 보내면 켜고, 0을 보내면 꺼요#ifdef ARDUINO_ARCH_ESP32const int LED = 25;← ESP32 보드면 이쪽 번호를 써요 (보드에 따라 자동으로 골라져요)#elseconst int LED = 10;#endifvoid setup() { pinMode(LED, OUTPUT); Serial.begin(115200); Serial.println("1을 보내면 켜지고, 0을 보내면 꺼져요");}void loop() { if (Serial.available() > 0) {← 컴퓨터에서 온 글자가 있으면 char c = Serial.read();← 한 글자 읽기 if (c == '1') { digitalWrite(LED, HIGH); Serial.println("켰어요");← 잘 받았다고 대답하기 } else if (c == '0') { digitalWrite(LED, LOW); Serial.println("껐어요"); } }}- 확인: 시리얼 모니터(115200) 위쪽 입력칸에 1을 쓰고 엔터 → LED 켜짐, 0 → 꺼짐.
바꿔 보기: ① 'r', 'y', 'g'로 신호등 색 고르기 ② 'b'를 보내면 3번 깜빡이기 ③ '?'를 보내면 빛 센서 값을 대답하게 해 보세요.
💬 막히면 도우미에게 물어보세요
오류가 나면 오류 문구를 그대로 붙여 넣으면 더 정확해요. 예: “시리얼 모니터에서 1을 보냈는데 LED가 안 켜져요”