发 帖  
原厂入驻New
[创意DIY] 自制红外遥器复制神奇 红外编解码 兼容常用家电如:空调 电视
2019-11-7 17:25:38  434 红外编解码 遥控器复制 STM32方案
分享
本帖最后由 jf_96581505 于 2019-11-7 17:30 编辑

功能介绍:采用STM32平台具有解码、编码红外遥控器的功能,兼容常用家电如:空调 、机顶盒、电视机、卫星机、电风扇、MP3播放器、音响设备、投影仪、CD、DVD播放机设备等红外遥控设备。板载大容量FLASH,学习的红外遥控数据存储FLASH,掉电不丢失,可存储1000多条数据。
  
演示视频:
2 通用遥控程序遥控电视盒演示视频:https://v.qq.com/x/page/y3013jp298f.html
03 通用遥控程序遥控空调演示视频:https://v.qq.com/x/page/p3017kly21e.html
04 通用遥控程序串口上位机遥控电视盒演示视频:https://v.qq.com/x/page/l3013iinacb.html
                                                                             https://v.qq.com/x/page/b3017axnge4.html

1)采用通用STM32单片机平台,软件支持二次开发,而市面上的大部分都是IC方案,红外遥控芯片硬件解析协议,基本上告别了二次开发。
2)购买本学习板提供原理图、源代码,方便用户移植到自己的产品上。
3)配0.96显示屏一个,方面观察接收和发送的红外数据,给人的感受很直观。
一、硬件说明
1)主控芯片STM32F103C8T6
2)串口1(db9接口、232串口),串口2(TTL串口,支持Arduino串口控制)
3)0.96寸液晶屏
4)4Mbyte FlasH(W25Q32)
5)红外发射二极管
6)红外接收管
7)1个用户LED和1个电源LED
8)6个用户按键
9)3个功能按键
10)SW下载口(GND,RST,TCK(SWCLK),TMS(SWDIO),3.3V)

          整体图片-OK.jpg

四、通用遥控遥控程序说明:
1)软件工作模式包括红外学习模式、发送模式、串口返回模式,串口模式;通过KEY1、KEY2、KEY3按键选择,复位可保存;串口模式独立于这三种模式之外,一直响应串口命令,无需切换
2)红外学习模式:
液晶屏第一行显示当前的模式;按一下遥控器,第三行显示红外接收的遥控数据长度;按一下用户任意一个按键,就会把数据保存到该按键对应的FLASH存储地址,并在第三行显示数据保存的地址(显示地址1,实际存储地址1*4096),数据保存完成后,会在第四行显示。
红外学习模式界面如下:
3)发送模式:按下用户按键(SW1-SW6),按下就会读取对应存储的数据通过红外发射出去:
液晶屏第一行显示当前的模式;按一下用户按键,第二行显示读取的数据地址,第三行显示读取的遥控数据长度;红外数据发射完成后,会在第四行显示。
4)串口返回模式:按下用户按键(SW1-SW6),按下就会读取对应存储的数据串口协议格式通过串口1(232串口)发送的上位机串口调试助手上:
液晶屏第一行显示当前的模式;按一下用户按键,第二行显示读取的数据地址,第三行显示读取的遥控数据长度;数据发送完成后,会在第四行显示。
5)串口模式:通过串口来控制开发板发送保存数据,支持串口1(232串口)和串口2(TTL串口),串口通信波特率固定为9600
a)串口协议:学习板串口接收一条串口指令,如果指令正确会返回一个字符’T’,错误返回’F’
一条串口指令:起始针(固定为0xAA)+命令针(8Bit)+地址针(16bit,范围0x0010-0x03FF)+数据长度(16bit,最大4096)+数据(8bit*数据长度)+校验针(8bit)
b)校验针计算方法如下:
校验针=256-(起始针+命令针+地址针+数据长度+数据)%256
C) 命令针:从下表定义选择
0x100x200x300x50
红外遥控学习指定地址红外遥控发射串口返回指定地址数据串口下载数据并发送
1命令针0x10:
实例:学习红外遥控码并保存数据到指定地址0x0010:AA100010000036
AA + 10 + 0010 + 0000 + 36
起始码+命令针+地址针+数据长度+校验针
发送完上述指令后,按一下遥控器,即可学习红外遥控码并保存到地址0x0010
2命令针0x20:
实例:读取指定存储地址0x0010的遥控码并发射出去:AA200010000026
AA + 20 + 0010 + 0000 + 26
起始码+命令针+地址针+数据长度+校验针
发送完上述指令后,地址0010红外遥控数据会被发射出去
3命令针0x30:
实例:读取指定存储地址0x0010的遥控码发送到串口上位机(按照协议发送,包含命令0x50):AA300010000016
AA + 30 + 0010 + 0000 + 16
起始码+命令针+地址针+数据长度+校验针
发送完上述指令后,地址0010红外遥控数据会按照命令针0x50格式返回串口调试上位机
4命令针0x50:串口上位机发送的遥控码并通过红外发射出去
起始针(固定为0xAA)+0x50+地址针(0xXXXX,不关心具体值)+数据长度(16bit,最大4096)+数据(8bit*数据长度)+校验针(8bit)
数据量较多,不再示例,参考命令0x30返回的数据,发送时直接使用命令0x30返回的数据。
D)串口调试上位机注意事项(仅支持通用遥控程序)
1设置串口,串口范围1-9 ;2超出无法打开
3存储地址必须在0x0010-0x03FF之间
4点击“红外学习“按钮后:
数据发送显示区十六进制(手动发送输入区):会显示串口发送的数据
如果学习板正确接收,接收文本数据显示区(TXT):会显示”T”
5点击“红外发射“按钮后:
数据发送显示区十六进制(手动发送输入区):会更新串口发送的数据
如果学习板正确接收,接收文本数据显示区(TXT):会显示”T”
6点击“读取遥控码“按钮后:
数据发送显示区十六进制(手动发送输入区):会更新串口发送的数据
如果学习板正确接收,接收文本数据显示区(TXT):会显示”T”
十六进制数据接收显示区(HEX):会显示开发板发送的红外遥控数据(命令针0x50格式的数据)
7学习板上的用户按键按名称对应串口上位机右下角的按键区域。
a)学习板按键学习区的6个按键,按下任意一个,再按一下遥控器,即可学习该遥控器按键的数据并保存。
b)学习板按键发射区的6个按键,按下任意一个,即读取该按键对应的数据并通过红外发射出区。

资料说明:1.电路图
               2.通用遥控程序,提供HEX固件,源码仅开放给购买学习板的用户,支持红外遥控设备,无需考虑协议,兼容市面上的电视、机顶盒、空条等红外遥控设备。
                3、学习板串口上位机
               如果需要实物,
淘宝链接: https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-8047966135.2.4ab6c6df2V6uIi&id=576100994243







4
IMG_20191024_210335.jpg

IR_remote_test V2.0.pdf

下载积分: 积分 -1 分

48.5 KB, 下载次数: 3, 下载积分: 积分 -1 分

学习板串口上位机和通用遥控程序HEX文件.zip

下载积分: 积分 -1 分

507.46 KB, 下载次数: 0, 下载积分: 积分 -1 分

分享淘帖 显示全部楼层
最近下载过的用户(2)
· 2019-11-7 21:50:03
感谢楼主的资料分享

评论

高级模式
您需要登录后才可以回帖 登录 | 注册

发资料
关闭

站长推荐 上一条 /10 下一条

快速回复 返回顶部 返回列表