Android 万能遥控 开源,快速实现WIFI红外遥控器(ESP8266 SoC模式)
本帖最后由 黑洞 于 2017-8-7 22:07 编辑
目前很多家电带有红外遥控,如:电视、空调、风扇等等。有一个用手机控制的红外线遥控器的话现有的家电变成智能家电了,比如到家之前手机远程开空调等。
本文介绍通过机智云平台快速实现智能家电红外遥控器。
1,硬件结构图
主要使用了esp8266 wifi模块和红外串口通讯模块。有了红外串口通讯模块,省去了单片机的串口通讯和红外编码程序,大大缩短开发时间。因为红外通讯模块不支持3.3VTTL电平,所以两个模块之间加了一个2路电平转换模块,把ESP8266的3.3V电平装换为红外通讯模块所需的5V电平。ESP8266有两个串口,串口0是双向的一般用在与MCU通讯,串口1是单向,显示LOG用。红外串口通讯模块资料请参考附件。
各模块连接图如下:
001_硬件结构图.jpg (49.23 KB, 下载次数: 130)
2017-8-2 13:42 上传
2, 红外线串口通讯模块
002_红外串口通信模块.jpg (73.37 KB, 下载次数: 134)
2017-8-2 13:42 上传
功能:
1、具备NEC格式红外发射功能。
2、具备NEC格式 红外编码功能。
3、带红外发射头扩展接口。
4、具备串口通信功能,通信电平为TTL。
5、可控制99%的NEC红外格式设备,包括电视机、电风扇等电子电器设备。
6、支持NEC 编码芯片:(典型编码芯片如uPD6121, uPD6122, TC9012 以及众多 的兼容芯 片型号,如 PT2221, PT2222,SC6121, SC6122, SC9012 等等)。
7、可作为红外无线数据通信、数据传输、红外控制等功能。
使用方法:
解码:解码时不需要发送任何指令,只需要拿起遥控对准模块的接收头按下,这时模块的串口就输出该红外编码。
编码(发射):编码时需要根据一定格式发送指令,通过电脑或者单片机串口发送5个字节的指令,就可以将对应编码的红外信号还原出去。
003_红外串口通讯模块命令格式.jpg (64.88 KB, 下载次数: 184)
2017-8-2 13:42 上传
2,获取遥控器编码
把红外串口通讯模块连接USB转TTL模块上(电压5V),打开串口调试助手,按下家电的红外遥控键,获取各键的红外编码并记录下来。
004_红外串口通讯模块USB连接图.jpg (137 KB, 下载次数: 115)
2017-8-2 13:42 上传
005_串口调试助手.jpg (71.8 KB, 下载次数: 117)
2017-8-2 13:42 上传
3,ESP8266开发(SoC)
创建数据点
006_数据点定义.jpg (29.36 KB, 下载次数: 144)
2017-8-2 13:42 上传
MCU设置及生成代码
007_MCU设置及生成代码.png (64.51 KB, 下载次数: 144)
2017-8-2 13:42 上传
4,Soc程序修改
红外遥控编码中可能包含0X00,这是字符串结束符,所以不能直接用uart0_sendStr函数了。
打开uart.c文件创建uart0_sendIFR函数,内容下图
008_uart_c.jpg (67.52 KB, 下载次数: 114)
2017-8-2 13:42 上传
uart.h 里加函数**
009_uart_h.jpg (20.98 KB, 下载次数: 117)
2017-8-2 13:42 上传
确认user_main.c函数中的串口初始化,由于红外串口通讯模块的默认波特率是9600,所以串口初始化部分不需要修改。
007_user_main_c.jpg (35.76 KB, 下载次数: 125)
2017-8-2 13:49 上传
gizwits_product.c 文件的修改
010_gizwits_product_c 文件的修改_1.jpg (68.11 KB, 下载次数: 118)
2017-8-2 13:42 上传
发射逻辑
011_gizwits_product_c 文件的修改_2.jpg (81.34 KB, 下载次数: 114)
2017-8-2 13:42 上传
5,编译及烧写
官网和其他帖子里介绍的很详细,这里不再重复了。
6,测试
红外线管对准家电,用手机机智云Demo程序可以控制家电了
012_测试.jpg (155.99 KB, 下载次数: 113)
2017-8-2 13:42 上传
013_界面1.png (67.72 KB, 下载次数: 135)
2017-8-2 13:49 上传
014_界面2.png (78.8 KB, 下载次数: 248)
2017-8-2 13:49 上传
源码和模块资料:
链接:http://pan.baidu.com/s/1hrTuegO 密码:qnnx
Android 万能遥控 开源,快速实现WIFI红外遥控器(ESP8266 SoC模式)相关推荐
- 用ESP8266快速实现WIFI红外遥控器( SoC模式)
目前很多家电带有红外遥控,如:电视.空调.风扇等等.有一个用手机控制的红外线遥控器的话现有的家电变成智能家电了,比如到家之前手机远程开空调等. 本文介绍通过机智云平台快速实现智能家电红外遥控器. 1, ...
- 红外遥控c语言,NEC协议红外遥控器
家电遥控器通信距离往往要求不高,而红外的成本比其它无线设备要低的多,所以家电遥控器应用中红外始终占据着一席之地.遥控器的基带通信协议很多,大概有几十种,常用的就有 ITT 协议.NEC 协议.Shar ...
- Android万能遥控菜单选择添加,Android万能遥控器小应用
在很久很久以前,手机是有红外功能的,后来随着蓝牙技术的成熟,红外逐渐被蓝牙取代,不再是标配了. 红外本身还是有些优点,比如操作简便,成本低.要想在手机上添加红外功能,就要外接一个转换模块. 现在市面上 ...
- Android万能遥控菜单选择添加,将小米米家万能遥控器添加到Home Assistant
以下方法经本人验证通过,环境如下: Home Assistant 0.91.4 米家万能遥控器固件版本:1.3.1_0014 MuMu安卓模拟器:V1.1.0.2 米家APP安卓版:V5.4.54 第 ...
- 红外遥控及Android手机红外遥控器开发
一.红外遥控 红外遥控技术是通过红外技术.红外通信技术和遥控技术的结合实现的一种无线控制技术.由于红外线的波长较短,对障碍物的衍射能力较差,无法穿透墙壁,所以红外遥控术更适合应用在短距离直线控制的场合 ...
- 学习型红外遥控器设计(0) 摘要
学习型红外遥控器设计(0) 摘要 (1) 绪论 (2) 方案设计 (3) 遥控解码 (4) 编码还原 (5) 硬件实现 (6) 总结展望 摘 要 随着家用电器种类的增加和无线 ...
- STM32 NEC红外遥控器解码
STM32 NEC红外遥控器解码 红外遥控编码格式 一体化红外接收头 STM32显示遥控器按下的数字代码 代码片 总结 原文链接:https://www.yourcee.com/newsinfo/29 ...
- android如何编程红外遥控,全志A20[android教程]-红外遥控器调试
第1章 前言 要在树莓派3 (A20)android系统上实现红外遥控器,因为super3上有红外接收头,所以可以直接支持红外遥控器,可以把树莓派3应用到家庭控制当中.当作网络机顶盒用 树莓派3的 ...
- android vitamio 实现快速播放,使用Vitamio打造自己的Android万能播放器(5)
前言 为了保证每周一篇的进度,又由于Vitamio新版本没有发布, 决定推迟本地播放的一些功能(截图.视频时间.尺寸等),跳过直接写在线播放部分的章节.从Vitamio的介绍可以看得出,其支持http ...
最新文章
- 首页被锁定7939的解决办法
- libtorch demo
- Decorator pattern
- java date不要秒_java – 比较日期忽略Joda中DateTime的秒和毫秒时刻
- 幂等问题-概念上的通俗解释(未完待续)
- Openssl的证书格式转换
- strlensizeof
- Android 系统(234)---Android 代号、标签和版本号
- Rivian计划在乔治亚州新增一个工厂
- 反编译apk,修改登录成功
- 计算机系统基础-袁春风老师-mooc-第二章测试习题及解析
- 小松鼠短视频完开源源码
- python爬取qq空间相册图片_如何用 Python 爬取 QQ 空间说说和相册?
- 【杂项】任务管理器的专用GPU内存和共享GPU内存
- 6.4 置换基本概念
- windows系统下的文件长名和文件短名
- 奇点云数据中台技术汇(二)| DataSimba系列之数据采集平台
- 微信公众号开发之微信测试账号申请
- 7-4 NetworkPolicy网络策略简介与Ingress及Egress案例
- 线段树维护(最大区间和,最大子段和,最长连续上升子序列)
热门文章
- Android N App分屏模式完全解析(上)
- 荣耀手机和小米打出了真火,针锋相对比拼千元机
- 英文月份简写、星期简写
- mysql minus_10.24程序员节,喜得一套「MySQL性能优化金字塔法则」
- thinkphp全开源社区团购接龙群接龙
- Salesforce Apex 触发器学习记录
- python使用aip库识别图片中文字
- 航顺HK32F030MF4P6 RST作GPIO SWCLK作EXTI5 SWDIO作ADC_AIN0
- 【无浪】自己用C++实现的零游戏的战斗(半成品)
- 你一年就工作一天还想请假......