四博智联产品售后
标题:
基于ESPDUINO模块的红外遥控器简单应用实例
[打印本页]
作者:
linXJ
时间:
2016-8-11 18:13
标题:
基于ESPDUINO模块的红外遥控器简单应用实例
1、实验材料:
ESPDUINO模块,红外发送遥控器和接收模块,杜邦线3根;
2、实验原理:
将红外接收模块的信号线S接到ESPDUINO板上的D13口,按下红外遥控器的按键,将发送红外信号到接收模块,按下不同按键单片机将接收到不同红外信号转换成不同的6进制码,通过函数将接收到的十六进制码转换成遥控器上面对应的键位标识符,然后输出到串口显示出来。
3、硬件连接:
红外接收模块的3根线“S、+、- ”分别接ESPDUINO板上D13、3.3v、GND;
按键时遥控器的红外发射灯对准接收模块,正常情况下每次按键接收模块上的显示灯会闪一下,表示接收到遥控器的信号。
4、示例源码:
#include <IRremoteESP8266.h>
int RECV_PIN = 13; //IR检测器/解调器连接到GPIO引脚13
IRrecv irrecv(RECV_PIN);
String aa="";
decode_results results;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // 启动接收器
}
void loop()
{
if (irrecv.decode(&results))
{
switch(results.value)//转换成遥控器上面对应的键位标识符
{
case 0xFF6897: aa="1"; break;
case 0xFF9867: aa="2"; break;
case 0xFFB04F: aa="3"; break;
case 0xFF30CF: aa="4"; break;
case 0xFF18E7: aa="5"; break;
case 0xFF7A85: aa="6"; break;
case 0xFF10EF: aa="7"; break;
case 0xFF38C7: aa="8"; break;
case 0xFF5AA5: aa="9"; break;
case 0xFF42BD: aa="*"; break;
case 0xFF4AB5: aa="0"; break;
case 0xFF52AD: aa="#"; break;
case 0xFF629D: aa="up"; break;
case 0xFFA857: aa="down"; break;
case 0xFF22DD: aa="left"; break;
case 0xFFC23D: aa="right"; break;
case 0xFF02FD: aa="OK"; break;
}
Serial.println(aa);
irrecv.resume(); // 接收下一个值
}
delay(100);
复制代码
5、实物连接及实验效果图:
1.jpg
(68.29 KB, 下载次数: 2526)
下载附件
2016-8-11 18:13 上传
欢迎光临 四博智联产品售后 (http://115.29.109.104/)
Powered by Discuz! X3.2