用ESP8266快速实现WIFI红外遥控器( SoC模式)

目前很多家电带有红外遥控,如:电视、空调、风扇等等。有一个用手机控制的红外线遥控器的话现有的家电变成智能家电了, 比如到家之前手机远程开空调等。
本文介绍通过机智云平台快速实现智能家电红外遥控器。

 

1 ,硬件结构图
主要使用了 esp8266 wifi 模块和红外串口通讯模块。有了红外串口通讯模块,省去了单片机的串口通讯和红外编码程序,大大缩短开发时间。因为红外通讯模块不支持3.3VTTL 电平,所以两个模块之间加了一个2 路电平转换模块,把ESP8266 3.3V 电平装换为红外通讯模块所需的5V 电平。ESP8266 有两个串口,串口0 是双向的一般用在与MCU 通讯,串口1 是单向,显示LOG 用。红外串口通讯模块资料请参考附件。
各模块连接图如下:
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第1张图片
2   红外线串口通讯模块
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第2张图片
功能:
1 、具备NEC 格式红外发射功能。
2 、具备NEC 格式  红外编码功能。
3 、带红外发射头扩展接口。
4 、具备串口通信功能,通信电平为TTL
5 、可控制99% NEC 红外格式设备,包括电视机、电风扇等电子电器设备。
6 、支持NEC  编码芯片:(典型编码芯片如uPD6121, uPD6122, TC9012  以及众多   的兼容芯  片型号,如 PT2221, PT2222,SC6121, SC6122,   SC9012  等等)。
7 、可作为红外无线数据通信、数据传输、红外控制等功能。

 

使用方法:
解码:解码时不需要发送任何指令,只需要拿起遥控对准模块的接收头按下,这时模块的串口就输出该红外编码。
编码( 发射) :编码时需要根据一定格式发送指令,通过电脑或者单片机串口发送5 个字节的指令,就可以将对应编码的红外信号还原出去。
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第3张图片

 

2 ,获取遥控器编码
把红外串口通讯模块连接USB TTL 模块上(电压5V ),打开串口调试助手,按下家电的红外遥控键,获取各键的红外编码并记录下来。
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第4张图片
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第5张图片

 

3 ESP8266 开发(SoC
创建数据点
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第6张图片

 

MCU 设置及生成代码
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第7张图片

 

4 Soc 程序修改
红外遥控编码中可能包含0X00 ,这是字符串结束符,所以不能直接用uart0_sendStr 函数了。
打开uart.c 文件创建uart0_sendIFR 函数,内容下图
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第8张图片
uart.h  里加函数**
确认user_main.c 函数中的串口初始化,由于红外串口通讯模块的默认波特率是9600 ,所以串口初始化部分不需要修改。
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第9张图片
gizwits_product.c  文件的修改
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第10张图片
发射逻辑
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第11张图片

 

5 ,编译及烧写
官网和其他帖子里介绍的很详细,这里不再重复了。
6 ,测试
红外线管对准家电,用手机机智云Demo 程序可以控制家电了
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第12张图片
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第13张图片
用ESP8266快速实现WIFI红外遥控器( SoC模式)_第14张图片

 

源码和模块资料:
链接:http://pan.baidu.com/s/1i5uvZMH  密码:wl3z
 
本文转自:http://club.gizwits.com/thread-7513-1-1.html
原文作者:黑洞

转载于:https://www.cnblogs.com/dapangsen/p/7278713.html

你可能感兴趣的:(用ESP8266快速实现WIFI红外遥控器( SoC模式))