基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(二)

2. 遥控解码

接下来,我们要获取原电视遥控的按键与其对应的红外编码

2.1 硬件与连接

我们将ESP8266 插到ESP8266 烧录器中,拿出三根杜邦线,分别连接ESP8266 烧录器的3.3V(VCC)、GND、IO2,另外一端连上红外接收模块的三个引脚;

3.3V(VCC) -> VCC
GND -> GND
IO2 -> DAT(data)

如图所示:
基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(二)_第1张图片
随后连接电脑,开始下一步。

2.2 代码

上一章调试中,打开的实例的内容即是红外遥控的解码例程。但是对应的引脚不适用于这款esp模块,所以我们需要修改一下

#include 
#include 
#include 
#include 

const uint16_t kRecvPin = 2;    //数据引脚选择(2 = IO2)

IRrecv irrecv(kRecvPin);

decode_results results;

void setup() {
  Serial.begin(115200);    //串口通讯波特率
  irrecv.enableIRIn();     // 初始化红外接收模块(开始接收)
  while (!Serial)          //等待初始化完成   
    delay(50);
  Serial.println();
  Serial.print("IRrecvDemo is now running and waiting for IR message on Pin ");            //打印红外接收模块正在运行
  Serial.println(kRecvPin);   //打印红外接收端口
}

void loop() {
  if (irrecv.decode(&results)) {          //判断是否接收到红外信号
    serialPrintUint64(results.value, HEX);     //打印红外信号数据(串口监视器查看)
    Serial.println("");
    irrecv.resume();     //接收下一个值
  }
  delay(100);
}

点击右上角的箭头(或项目->上传)烧录程序到esp模块中

2.3 结果

烧录完成后,打开工具 -> 串口监视器,将波特率调至115200,对着红外接收模块按动电视遥控按键,将会出现如图所示十六进制数据,记录保存各个按键所对应的数据。
基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(二)_第2张图片

链接: 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(一).
链接: 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(二).
链接: 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(三).
链接: 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(四).

你可能感兴趣的:(智能家居,物联网,arduino,esp,8266,Arduino,wifi,esp8266,blinker库,点灯科技库,Arduino库)