基于ST20P18的433MHz无线通用遥控设备
对应显示RAM中的一个列字节。当设置了块地址和列地址后,就唯一确定了显示RAM中的一个列字节。每个列字节中最上面一位为LSB,最下面一位为MSB。对显示RAM的一个列字节赋值就是对液晶屏幕上对应像素点是否显示进行控制。把不同字符的字模写到不同位置的显示RAM字节中,就能在屏幕上显示相应的所要求的字符。
通用遥控器的软件设计
开机后,先进行初始化,包括对单片机的初始化、LCD的初始化和其他模块的初始化。出于省电的考虑在40s内若没有键按下,让单片机的LCD控制器进入空闲模式。用"for"循环来计时,并设计初值为零。随后开始40s计时,若在此期间有键按下,则进入中断服务程序,若40s内无键按下,则单片机的 LCD控制器进入空闲模式。若在空闲中有键被按下,单片机被唤醒,执行中断服务程序。由于单片机的LCD控制器被中断唤醒执行完中断程序返回后,单片机会接着执行把单片机的LCD控制器置为空闲模式的那条指令的下一条指令,因此在把单片机的LCD控制器置为空闲模式的指令后再有一个循环来计时,由于中断返回前,重设计数初值为零,所以会重新开始5s的计时。在这40s内,若无键按下, 则单片机的LCD控制器又进入空闲模式。程序流程图如图4所示。
图4 软件设计流程
通信协议
1 编码字的格式
图5 信号占空比
2 协议设计
通常遥控信号的发射,就是将某个按键所对应的控制指令和信息码(由0和1组成的序列),调制在32~56kHz范围内的载波上,然后经放大、驱动无线发射电路将信号发射出去。
如表1所示,各部分码的作用:引导码用来通知接收器其后为遥控数据。地址码用来区分是哪一机型的数据,接收端据此来判断后续的数据是否为本机必须执行的指令。信息码用来区分是哪一个键被按下,接收端接受信息码的数据并据此做出应该执行什么动作的判断。信息码也包括在持续按键时发送的连续码。它告知接收端,某键是在被连续地按着。结束码用来通知接收器一帧数据发送完毕。
遥控数据传输系统的关键是数据传输的可靠性。为了提高编码的可靠性,本协议规定地址码后接着传送一个反码,供误码校验使用。每一位的信息码后接着传送一个奇偶校验位也是用来作为误码校验使用。
结束语
本设计的创新在于提出了通用家电遥控设备的设计方案,根据实际的要求能够控制多个家用电器,睡眠模式实现低功耗,且成本低于其他同类产品。经过实际运行测量,该无线传输系统工作稳定,穿透能力强,功耗低(当在空闲模式下,电路中电流小于10μA)能够很好的实现相应设计要求的功能。
遥控 相关文章:
- 住宅安全:监视遥控远程家居(01-17)
- 智能型红外遥控器的设计(04-12)
- 语音芯片APR9600及其在电话遥控系统中的应用(05-04)
- 基于I2C总线遥控彩电原理及故障演示装置的研制(11-14)
- 无线遥控LED时钟屏的设计(11-15)
- 遥控器已经OUT,2009期待“手势控制”电视机!(11-25)