STC15格力空调串口遥控器
去年用STC32示波器解码格力空调的遥控,并用STC15F104W再现了红外波形。图1 黑历史
由于当时是秋季,不需要开空调(作者在广西),所以STC15的空调遥控程序仅用于演示,只能通过一个按键发送一次开机指令。
但是坑已经挖了,迟早得填,况且现在气温渐暖,电费暴涨的季节越来越近了。
所以很有必要完善一下空调遥控程序,让它不仅可以控制开关机,还能控制温度、风速等。
STC15F104W是一款8引脚单片机,拥有4KB的ROM和128字节的RAM,以及1K的EEPROM,无硬件串口,所以需要使用软件模拟串口。
建议使用STC8G1K08A(也就是作者的昵称)替代STC15F104W,引脚完全兼容,ROM增加至8KB,RAM增加至1KB,还具有硬件串口、SPI、IIC、ADC等功能。
程序只需稍作修改,主要是修改寄存器和软件延时部分,可用STC-ISP软件的“软件延时计算器”功能计算。
至于为什么要使用如此"low"的单片机,是因为作者当年脑子一热囤了十几片没处用。
图2 STC15F104W引脚图
图3 STC8G1K08A引脚图
串口波特率为115200,无校验,1停止位
16进制格式,帧头0x11,0x45,0x14,后面接指令码:
0x00 关机
0x01 开机
0x02 自动风速
0x03 一档风速
0x04 二挡风速
0x05 三档风速
0x06 超强风速
0x07 节能
0x08 灯光关闭
0x09 灯光开启
0x0A 扫风关闭
0x0B 扫风开启
0x0C 风挡上
0x0D 风挡下
0x10~0x1E 调节温度16~30℃
例如,{0x11,0x45,0x14,0x01}为开空调指令
作者是南方人,偷懒只做了制冷模式,其它模式请自由发挥
使用EEPROM保存上次遥控的数据,如灯光、温度等
下次上电无需重新设置温度
IO口使用情况:
P3.0 软件模拟串口输入,可改
P3.1 输出红外遥控编码,高电平有效,可接串口模块的Rx观察是否有信号输出
P3.2 输出红外遥控编码,低电平有效,与P3.1电平相反,可接S8550三极管驱动红外二极管
P3.3~P3.5 未用,请自由发挥
串口可用单片机、Wi-Fi模块、蓝牙模块、射频模块和语音模块等任何能够进行串口通信的设备来控制。
图4 乞丐板
STC15的程序在压缩包里。
温馨提醒:
1、STC15程序不兼容keil4,需要使用keil5打开
厉害了,老铁 STC15W104E SOP8、STC15W204S SOP8、STC8G1K08 SOP8、STC8g1k08a SOP8这些8脚的IC,做红外遥控发射,不需要增加零件的情况下,可以有9个键,任何键都可以唤醒(3个IO唤醒(对地接3个键),2个IO扫描(分别对唤醒IO接3个键),一个IO驱动红外LED。) 好东西,问下有美的的吗 建议实验全部改用 STC8/STC32, 都可以 USB 直接下载 zhigao1986 发表于 2023-5-14 11:45
好东西,问下有美的的吗
不好意思,家里没有美的空调,不过也可以通过STC32示波器解码。 梁工 发表于 2023-4-14 10:58
STC15W104E SOP8、STC15W204S SOP8、STC8G1K08 SOP8、STC8g1k08a SOP8这些8脚的IC,做红外遥控发射,不需要 ...
那样不如直接拿遥控器。 梁工 发表于 2023-4-14 10:58
STC15W104E SOP8、STC15W204S SOP8、STC8G1K08 SOP8、STC8g1k08a SOP8这些8脚的IC,做红外遥控发射,不需要 ...
直接上ADC键盘,打底16个{:lol:} 感谢楼主朋友的分享!先收藏,有空再玩一玩。 厉害,破解高手。