先读出按键值,然后根据键值设定遥控码的脉冲个数,再调制成40KHZ方波由红外线发光管发射出去。 图3.10为按键1对应的波形编码,图3.11为按键2对应的波形编码。
图3.10 按键1对应编码
图3.11按键2对应编码
(2)数据帧的接收处理
当红外线接收器输出脉冲数据帧时,第一位码的低电平将启动中断程序,实时接收数据帧。在数据帧接收时,将对第一位(起始位)码的码宽进行验证。若第一位低电平码的脉宽大于3毫秒时,接收结束,然后根据累加器A中的脉冲个数,执行相应输出口的操作。图3.12为红外接收器输出的按键4对应的一帧遥控码波形图。
图3.12 红外线接收器输出的一帧遥控码波形图
15
发射电路各部分流程图
(1) 发射部分主程序流程图:
图3.13 发射模块流程图
(2) 键盘扫描子程序: 程序名:KEYWORK
图3.14 键扫描程序流程图
16
该部分直接决定按键的位置判断,正确对按键开关的位置做出正确辨认,才能发出正确的编码信号。从而实现对电路的正确控制。
接收电路各部分流程图 (1)遥控接收程序:
图3.15 遥控接收流程图
如图3.15为遥控接收电路流程图。该部分也是一直处于工作状态,系统要不停的对是否存在中断信息进行判断,当收到中断信息时,则调用中断子程序,执行中断信息相对的指令。完成其功能作用。
17
(2)中断子程序流程图 程序名:INTEX0
图3.16 中断程序流程图
如图3.16为中断程序流程图。该部分功能是识别指令要控制的开关电路,并将信号输入到该电路相对应的管脚,完成起控制电路通断的作用。也是接收电路的核心部分。
18
四、实验记录及结果
PROTEL原理图:
图3.17 接收电路
图3.18 接收电路
程序设计清单: (1)发射程序
KEYX0 EQU P1.0 ; P1.0~P1.1位键盘行扫描 KEYX1 EQU P1.1 ;本系统采用15路开关阵列 KEYY EQU P0 ;P0口键盘列扫描 ORG 0000H ;程序执行开始地址 AJMP START ;跳至START执行 ORG 0003H ;外中断0中断入口地址 RETI ;中断返回(不开中断) ORG 000BH ;定时器T0中断入口地址 RETI ;中断返回(不开中断) ORG 0013H ;外中断1中断入口地址 RETI ;中断返回(不开中断) ORG 001BH ;定时器T1中断入口地址
19