적외선 수신기, 리모컨: 두 판 사이의 차이

아두위키 : Arduwiki
(새 문서: 본문에서는 리모컨의 0버튼을 누를 시 LED가 켜지고 다른 버튼을 누를 시 꺼지는 예제를 진행합니다. * 적외선 수신기 * 38KHz 대역의 적외선을 수신하여 출력하는 센서입니다. * 수신만 가능합니다. * IR 리모컨 * 적외선 수신기로 수신할수 있는 신호를 보내는 리모컨입니다. == '''스펙''' == * 적외선 수신 센서 * 작동 전압 : 2.7V ~ 5.5V * 수신 각도 : 약 90도 * 적외선 주파...)
(차이 없음)

2023년 11월 23일 (목) 15:20 판

본문에서는 리모컨의 0버튼을 누를 시 LED가 켜지고 다른 버튼을 누를 시 꺼지는 예제를 진행합니다.

  • 적외선 수신기
  • 38KHz 대역의 적외선을 수신하여 출력하는 센서입니다.
  • 수신만 가능합니다.
  • IR 리모컨
  • 적외선 수신기로 수신할수 있는 신호를 보내는 리모컨입니다.

스펙

  • 적외선 수신 센서
  • 작동 전압 : 2.7V ~ 5.5V
  • 수신 각도 : 약 90도
  • 적외선 주파수 : 38KHz
  • 리모컨
  • 작동 전압 : 5V
  • 주파수 : 38KHz

하드웨어

  • 아두이노 우노
  • 적외선 수신기
  • LED
  • 저항 220옴
  • 적외선 리모컨

연결

아두이노 우노 적외선 수신 센서 LED 저항
5V VCC
GND GND -
A0 연결
D8 +
OUT 연결

라이브러리

  • IRremote by shirriff, z3t0, ArminJo(라이브러리 매니저로 설치)

예제 코드

첫번째 코드를 업로드하여 시리얼모니터를 켠 뒤 리모콘의 버튼을 누르면 버튼이 입력되었을 경우에 해당하는 값이 무엇인지 알 수 있다.

0을 눌렀을때의 값을 두번재 코드의 값을 집어넣으라는 주석이 잇는 부분에 넣으면 0을 눌렀을 때 LED가 점등한다.

컨트롤러 값 확인

#include <IRremote.h>

#define irOut A0

IRrecv irrecv(irOut);

void setup() {
  Serial.begin(9600);
  Serial.println("Serial start");
  irrecv.enableIRIn();
}

void loop() {
  if (IrReceiver.decode()) {
    Serial.println(IrReceiver.decodedIRData.decodedRawData);
    irrecv.resume();
  }
}

메인 코드

#include <IRremote.h>

#define irOut A0
#define led 8

IRrecv irrecv(irOut);

void setup() {
  pinMode(led, OUTPUT);
  digitalWriteFast(led, LOW);
  Serial.begin(9600);
  Serial.println("Serial start");
  irrecv.enableIRIn();
}

void loop() {
  if (IrReceiver.decode()) {
    if (IrReceiver.decodedIRData.decodedRawData == 3910598400)
      digitalWrite(led, HIGH);
    else
      digitalWrite(led, LOW);
    irrecv.resume();
  }
}

실행 결과

구매 링크

적외선 리모컨

공집사몰

공집사 스마트스토어


적외선 수신기

공집사몰

공집사 스마트스토어