CODE 7.10 | 적외선 리모컨으로 LED 제어하기
| 01 | #include <IRremote.h> |
| 02 | |
| 03 | int irPin = 9; // 적외선 수신 센서를 연결한 디지털 핀 |
| 04 | int ledPin = 11; // LED를 연결한 디지털 핀 |
| 05 | |
| 06 | void setup() { |
| 07 | pinMode(ledPin, OUTPUT); // LED 핀을 출력 모드로 설정 |
| 08 | Serial.begin(9600); // 시리얼 모니터 통신 시작 |
| 09 | |
| 10 | // 적외선 수신기 시작 |
| 11 | IrReceiver.begin(irPin, DISABLE_LED_FEEDBACK); |
| 12 | } |
| 13 | |
| 14 | void loop() { |
| 15 | // 적외선 리모컨 신호가 수신되었는지 확인 |
| 16 | if (IrReceiver.decode()) { |
| 17 | int command = IrReceiver.decodedIRData.command; |
| 18 | // 수신된 명령 값 저장 |
| 19 | |
| 20 | // 시리얼 모니터에 수신된 번호 출력 |
| 21 | Serial.print("수신된 명령(HEX): "); |
| 22 | Serial.println(command, HEX); |
| 23 | |
| 24 | // 명령 값이 HEX 1이면 LED 켜기 |
| 25 | if (command == 0x1) { |
| 26 | digitalWrite(ledPin, HIGH); // LED 켜기 |
| 27 | Serial.println("LED ON"); |
| 28 | } |
| 29 | // 명령 값이 HEX 0이면 LED 끄기 |
| 30 | else if (command == 0x0) { |
| 31 | digitalWrite(ledPin, LOW); // LED 끄기 |
| 32 | Serial.println("LED OFF"); |
| 33 | } |
| 34 | |
| 35 | // 다음 신호를 받을 수 있도록 수신기 초기화 |
| 36 | IrReceiver.resume(); |
| 37 | } |
| 38 | } |
댓글 없음:
댓글 쓰기