BASIC4MCU | 질문게시판 | 적외선 통신 알려주실분있나요 ㅠㅠ
페이지 정보
작성자 hkjsj10 작성일2022-07-30 22:35 조회148회 댓글1건본문
IRremote.h 라이브러리 없이 통신하는 방법이 있을까요?
모터에 IR수신기를달고 거의 초당 한번 회전하는 속도라서 IRremote.h를 쓰면 크기가 커서 받지를 못합니다....
int LED = 8;
void setup()
{
Serial.begin(9600);
pinMode(8, OUTPUT);
}
void loop()
{
int i = 0; //loop 지역 변수 i를 0으로 입력
if(Serial.available())
{
char data;
data = Serial.read();
Serial.println(data);
while(true)
{
if (data =='1')
{
for (int i=0; i < 7; i++)
{
if ( i ==3 )
{
digitalWrite(8,LOW);
delay(150);
}
else
{
digitalWrite(8,HIGH);
delay(150);
}
}
}
}
}
}
이런식으로 LED 쏘듣이 적외선을 쏘면 수신기에서 읽어낼수있는방법이있거나 혹은
다른 통신방법이 있을까요 ㅠㅠ 너무급해서 아무리알아봐도 모르겠네요
적외선 통신방법이너무궁금합니다
기존 코드는 IRremote.h 송수신기 코드 쓰고있었습니다...
#include <IRremote.h> // "IRremote.h" 라이브러리를 사용하겠다.
int Recv_pin = 12;
IRrecv irrecv(12); // 적외선 센서 핀 D9에 연결
decode_results results; // results에 적외선 수신번호를 저장하겠다
void setup(){
irrecv.enableIRIn(); //적외선 센서 활성화
Serial.begin(9600); //시리얼 프린트를 시작합니다
Serial.println("Start");
IrReceiver.begin(Recv_pin, ENABLE_LED_FEEDBACK);
}
void loop(){
if(irrecv.decode(&results)){ // if문 : 만약에 적외선 신호를 받았다면.
if (results.value % 10 == 0){
Serial.println(results.value);
Serial.println(results.decode_type);// 받은 적외선 신호값을 시리얼 모니터에 출력
}
irrecv.resume(); // 계속해서 다음 신호 받기
}
}
요약:IRremote 라이브러리 없이 적외선센서로 통신하는방법
댓글 1
조회수 148master님의 댓글
master 작성일블루투스가 낫지 않을까요?