arduino/mixly红外发射接收模块

一、资料

http://资料链接:https://pan.baidu.com/s/1idRcrVCxQ5zWLh59EFpi9g 提取码:n8ud

默认波特率9600

arduino/mixly红外发射接收模块_第1张图片

 串口通信,可以发送也可以接收

arduino/mixly红外发射接收模块_第2张图片

 发送格式

arduino/mixly红外发射接收模块_第3张图片

 arduino/mixly红外发射接收模块_第4张图片

 二、器材

红外解码模块

arduino/mixly红外发射接收模块_第5张图片

 红外接收模块

arduino/mixly红外发射接收模块_第6张图片

arduino uno*2

 arduino/mixly红外发射接收模块_第7张图片

 三、接线

红外接收模块 arduino uno1
VCC 5V
GND GND
S D6
红外解码模块 arduino uno2
VCC 5V
GND GND
RX D3
TX D2

四、程序

这里的程序效果是红外发射端发射编码A,延时1S再发送编码B,再延时1S依次循环,

红外接收端接收红外发射端发射的编码,如果是编码A,D13灯就亮,如果是编码B,D13灯就灭

注意的是比如红外发射端要发射的值是 00 FF 45,接收端接收到的就不是00 FF 45,而是0xFFA25D,这个之间有一个对应关系,可以打印接收的值来查看

发射端程序

mixly程序

arduino/mixly红外发射接收模块_第8张图片

arduino程序


#include 

SoftwareSerial mySerial(2,3);
unsigned char kai[5]={0xA1,0xF1,0x00,0xFF,0X45};

unsigned char guan[5]={0xA1,0xF1,0x00,0xFF,0X46};

void setup(){
  mySerial.begin(9600);
}

void loop(){
  mySerial.write(kai,5);
  delay(1000);
  mySerial.write(guan,5);
  delay(1000);

}

 接收端程序

mixly程序

arduino/mixly红外发射接收模块_第9张图片

 arduino程序


#include 

long ir_item;
IRrecv irrecv_6(6);
decode_results results_6;

void setup(){
  Serial.begin(9600);
  pinMode(13, OUTPUT);
  irrecv_6.enableIRIn();
}

void loop(){
  if (irrecv_6.decode(&results_6)) {
    ir_item=results_6.value;
    String type="UNKNOWN";
    String typelist[18]={"UNUSED", "RC5", "RC6", "NEC", "SONY", "PANASONIC", "JVC", "SAMSUNG", "WHYNTER", "AIWA_RC_T501", "LG", "SANYO", "MITSUBISHI", "DISH", "SHARP", "DENON", "PRONTO", "LEGO_PF"};
    if(results_6.decode_type>=1&&results_6.decode_type<=17){
      type=typelist[results_6.decode_type];
    }
    Serial.println("IR TYPE:"+type+"  ");
    Serial.println(ir_item,HEX);
    if (ir_item == 0xFFA25D) {
      digitalWrite(13,HIGH);

    }
    if (ir_item == 0xFF629D) {
      digitalWrite(13,LOW);

    }
    irrecv_6.resume();
  } else {
  }

}

五、效果

红外接收端的D13LED间隔1S亮灭

你可能感兴趣的:(Mixly与Arduino,fpga开发,arduino,mixly)