stm32主机从机代码与资料单片机解密
- 单片机解密;红外遥控电容调速风扇控制器
- ;STC8G1K08(DIP16或SOP16)+TM1637显示模块+EC11编码器+CBB电容
- ;杨小强,2022年8月
- ;内部R/C时钟,频率选择:11.0592MHz
- ;显示:(TM1637)4位数码管显示模块
- ;调整定时、单片机解密档位:EC11带按键5脚旋转编码器。也可以用3只按键代替EC11编码器
- ;
- ;工作时先全功率驱动继电器,延时一定时间后转为PWM方式驱动,以降低功耗减少发热量,
- ;PWM周期25微秒*2=50微秒,频率20KHz占空比50%,继电器线圈并联一只104电容,驱动电流降低到50%左右
- ;保持吸合状态。
- ;如果使用可控硅控制就取消主程序中初始化部分的“SETB PWM”指令,或改为“CLR PWM”(禁止PWM驱动)
- ;
- ;EC11编码器按键、旋转动作:
- ; 1.旋转编码器:对当前显示的“定时时间”或“档位”作增(减)调整
- ; 2.短按1次:正常风与自然风(睡眠风)切换。自然风状态时LED指示灯亮,只显示定时时间。
- ; 3.短按2次:设置自然风(睡眠风)渐慢/渐快变化的上下限档位范围、各档位变化的间隔时间(秒)
- ; 4.长按10秒:显示“----”,红外遥控信号解码,遥控器按键功能定义。定义好后须长按10秒才保存
- ;
- ;短按编码器按键2次设置自然风(睡眠风)渐慢/渐快变化的上下限档位范围、档位变化的间隔时间(秒):
- ; 1.显示:L-最低档位下限,旋转编码器加/减,上、下限档位之间最少间隔3档。
- ; 2.显示:H-最高档位上限,旋转编码器加/减,上、下限档位之间最少间隔3档。
- ; 3.显示:E-档位渐慢/渐快变化时的间隔时间(1~5秒),旋转编码器加/减
- ;设置好一项,短按编码器按键或者闪烁5秒无操作,自动跳到下一项。
- ;短按2次编码器按键保存并退出,或在第3项时无操作闪烁5秒自动保存并退出。
- ;
- ;长按10秒显示“----”进入红外遥控器的按键定义:
- ;定义1“关”、2“开/风速”、3“定时”、4“自然风”、5“+”、6“-”六个功能键。
- ; 交替显示功能编号+遥控器客户码(不显示反码)和原来保存的按键值,按键值为数据码+数据码反码
- ;共4个十六进制数,按下遥控器按键收到信号解码成功并显示,即为新的按键值,遥控器客户码与原来保
- ;存的不相同时,自动删除旧的数据(保存才会生效),短按跳到下一个功能编号,也可以旋转EC11编码器
- ;向前/后跳到任意编号,全部或部分定义好后,长按10秒编码器按键显示“----”保存并退出才生效,
- ;短按两次退出或60秒无操作自动退出,不保存,仍然还是原来的数据。
- ;
- ;1“关”键:定时时间清零,关风扇
- ;2“开/风速”键:当定时时间为零时,置上电默认定时时间,开风扇;定时时间不为零时,档位
- ; 加1,到最高档后又从1档开始循环,支持长按连续加;自然风(睡眠风)状态时
- ; 不能调整档位。
- ;3“定时”键:增加定时时间。风扇在关的状态时,增加定时时间立即开风扇。
- ;4“自然风”键:正常风与自然风(睡眠风)切换,自然风(睡眠风)状态时LED指示灯亮,只显示定时时间。
- ;5“+”键:对当前显示的“定时时间”或“档位”作增加调整,支持长按连续加。
- ;6“-”键:对当前显示的“定时时间”或“档位”作减少调整,支持长按连续减。
- ;
- ;保存失败显示5秒E1
- ;
- ;P3口接6只继电器(5只CBB电容,耐压400V或630V)、LED指示灯、红外接收头:
- ;P3.0----9脚,继电器,1uF
- ;P3.1----10脚,继电器,2.2uF
- ;P3.2----11脚,继电器,3.3uF
- ;P3.3----12脚,继电器,4.7uF
- ;P3.4----13脚,继电器,4.7uF
- ;P3.5----14脚,继电器,直通
- ;P3.6----15脚,自然风LED指示灯,低电平亮
- ;P3.7----16脚,红外接收头
- ;
- ;各档档位控制码及对应的电容容量:
- ;01档:控制码FEH,P3.0控制的继电器导通,电容容量1uF
- ;02档:控制码FDH,P3.1控制的继电器导通,电容容量2.2uF
- ;03档:控制码FBH,P3.2控制的继电器导通,电容容量3.3uF
- ;04档:控制码FAH,P3.0、P3.2控制的继电器导通,电容容量1uF+3.3uF=4.3uF
- ;05档:控制码F9H,P3.1、P3.2控制的继电器导通,电容容量2.2uF+3.3uF=5.5uF
- ;06档:控制码F8H,P3.0、P3.1、P3.2控制的继电器导通,电容容量1uF+2.2uF+3.3uF=6.5uF
- ;07档:控制码F4H,P3.0、P3.1、P3.3控制的继电器导通,电容容量1uF+2.2uF+4.7uF=7.9uF
- ;08档:控制码F2H,P3.0、P3.2、P3.3控制的继电器导通,电容容量1uF+3.3uF+4.7uF=9uF
- ;09档:控制码F1H,P3.1、P3.2、P3.3控制的继电器导通,电容容量2.2uF+3.3uF+4.7uF=10.2uF
- ;10档:控制码F0H,P3.0、P3.1、P3.2、P3.3控制的继电器导通,电容容量1uF+2.2uF+3.3uF+4.7uF=11.2uF
- ;11档:控制码E4H,P3.0、P3.1、P3.3、P3.4控制的继电器导通,电容容量1uF+2.2uF+4.7uF+4.7uF=12.6uF
- ;12档:控制码E2H,P3.0、P3.2、P3.3、P3.4控制的继电器导通,电容容量1uF+3.3uF+4.7uF+4.7uF=13.7uF
- ;13档:控制码E1H,P3.1、P3.2、P3.3、P3.4控制的继电器导通,电容容量2.2uF+3.3uF+4.7uF+4.7uF=14.9uF
- ;14档:控制码E0H,P3.0、P3.1、P3.2、P3.3、P3.4控制的继电器导通,电容容量1uF+2.2uF+3.3uF+4.7uF+4.7uF=15.9uF
- ;15档:控制码DFH,P3.5控制的继电器导通,直通。
- ;
- ;----------------------------- 端口定义 ------------------------------------
- P5 DATA 0C8H ;P5口定义
- P1M1 DATA 091H ;P1口配置寄存器1
- P1M0 DATA 092H ;P1口配置寄存器0
- P3M1 DATA 0B1H ;P3口配置寄存器1
- P3M0 DATA 0B2H ;P3口配置寄存器0
- P5M1 DATA 0C9H ;P5口配置寄存器1
- P5M0 DATA 0CAH ;P5口配置寄存器0
- CLK EQU P1.0 ;1脚,接显示模块TM1637的CLK
- DIO EQU P1.1 ;2脚,接显示模块TM1637的DIO
- EC11A EQU P1.6 ;3脚,接编码器的A引脚(+)
- EC11B EQU P1.7 ;4脚,接编码器的B引脚(-)
- EC11K EQU P5.4 ;5脚,接编码器的按键KEY
- LED EQU P3.6 ;15脚,自然风状态LED指示灯,低电平亮
- IR EQU P3.7 ;16脚,红外接收头
- BUZZER EQU P5.5 ;7脚,无源蜂鸣器
- ;---------------------------- 位地址及RAM的使用 ----------------------------
- BMQDZ BIT 20H.0 ;编码器动作,1=编码器有旋转动作;0=没有旋转动作
- XZFX BIT 20H.1 ;旋转方向,1=编码器顺时针正转;0=编码器逆时针反转
- FLQH BIT 20H.2 ;风类切换,1=自然风(睡眠风);0=正常风
- TSFX BIT 20H.3 ;调速方向,1=渐快;0=渐慢。自然风渐变控制时的调速方向。
- YSBC BIT 20H.4 ;延时保存,1=在MJS倒计时结束时保存档位。
- SSBZ BIT 20H.5 ;闪烁标志,1=不显示,0=显示,数字及冒号闪烁时用,每0.5秒变化一次。
- XSNRXZ BIT 20H.6 ;显示内容选择,1=显示档位;0=显示定时时间。
- XSKG BIT 20H.7 ;显示开关,1=关闭T1中断的显示功能,0=允许显示定时和档位等内容
- XSQHY BIT 21H.0 ;显示切换1,1=显示自然风档位变化范围或红外解码显示;0=显示档位或定时。
- XSQHE BIT 21H.1 ;显示切换2,1=显示自然风档位变化范围;0=红外遥控信号解码显示。设置时用
- BMXSQH BIT 21H.2 ;编码显示切换,1=显示数据码+反码;0=显示功能编号+系统码。设置时用
- PWM BIT 21H.3 ;1=使用PWM方式驱动;0=禁止PWM驱动
- PWMBZ BIT 21H.4

芯片解密