Esp8266学习5. 红外信号收发实验

您所在的位置:网站首页 esp8266网络 Esp8266学习5. 红外信号收发实验

Esp8266学习5. 红外信号收发实验

2023-03-27 05:38| 来源: 网络整理| 查看: 265

Esp8266学习5. 红外信号收发实验一、概述1. ESP8266红外功能及库2. 红外收发常见步骤二、发送端1. 电路接线2. 源代码3. sendSony介绍二、接收1. 源代码一、概述1. ESP8266红外功能及库

ESP8266 支持通过红外接收器和红外LED进行红外收发功能。

ESP8266的红外收发功能需要借助外部库,常用的库有IRremoteESP8266、IRremote、IRLib2等。

IRremoteESP8266库是专门为ESP8266芯片设计的红外收发库,它支持多种协议,包括NEC、Sony、RC5、RC6等,还支持学习和发送红外信号。

另外IRremote库和IRLib2库也是常用的红外收发库,但这两个库不是专门为ESP8266设计的,需要进行相应的适配。

2. 红外收发常见步骤

使用这些库进行红外收发时,一般需要进行以下步骤:

初始化红外收发器和红外LED引脚,一般使用IRrecv和IRsend对象进行操作。在循环中检测是否有红外信号接收到,使用IRrecv对象的decode方法对信号进行解码。根据解码后的数据判断红外信号的类型和命令,进行相应的操作。使用IRsend对象的send*方法发送红外信号。二、发送端1. 电路接线

下面将红外发射管接在GPIO4(D2)引脚,为防止烧管,可以在红外发射管和地之间串联一个1K电阻。

Esp8266学习5. 红外信号收发实验_学习

下面的程序实现了从串口读入4个字节,然后通过红外发射出去。

Esp8266学习5. 红外信号收发实验_ESP8266_02

2. 源代码#include int IR_S = 4; //接arduino 8号引脚 IRsend irsend(IR_S); void setup() { pinMode(IR_S, OUTPUT); Serial.begin(9600); // 9600 波特率 } void loop() { uint8_t buffer[4]; if ( Serial.available()>=4) { Serial.readBytes(buffer, 4); uint32_t data = buffer[0]


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3