基于MC9RS08KA2红外远距离多键控制方案设计
扫描二维码
随时随地手机看文章
在空调和许多家电应用中,常常使用无线数据接口(如红外通信)来发送和接收数据,在红外通信中基本的要求是:待机模式低功耗,低电压操作,低成本,简易的代码调制来客户化定制不同的模式。
本方案包括发送和接收部分。设计中采用6引脚DFN封装的MC9RS08KA2来实现红外远程控制;采用6引脚的BDM接口实现Flash在线编程和调试。红外远程控制发送部分通过红外线发射产生数字控制帧到接收部分。红外发送二极管和红外接收调制元件是红外控制的重要器件,作为家居应用,红外载波频率的典型值是38kHz。对于不同的发射和接收设计,红外线数据帧模式都是确定的,它依赖于应用的要求。
载波频率是38 kHz,在红外线数据传输中考虑到低功耗问题,占空比设计成l/3,红外发射二极管导通时间为8μs,截止时间为18μs。相对于占空比为1/2时,红外发射二极管导通时间为13μs,截止时间为13μs,功耗降低了很多。数据位0/l表示基于调制信号的导通和截止时间。数据位0表示载波导通和截止时问都足0.5ms;数据位1表示载波导通时间足O.5 ms,截止时间是1.5 ms。
本次设计的数据帧由前导码、多个数据码、1字节的客户识别码和1个停止位组成。前导码代表不同的IR接收器,数据码用于控制开闭信号、加减、不同模式等,客户识别码用于识别小同的客户,停止位用于标识当前传输结柬。
1 MC9RS08KA2微处理器
MC9RS08KA2(KA2)是一个超低功耗、低引脚封装的MCU,适合于家居、玩具和远程控制的应用。它是RS08 CPU内核,包含62字节RAM、2 KB Flash和1个8位的定时器,具有键盘中断、低压检测和模拟比较功能,有6引脚和8引脚2种封装形式。设计中通过软件延时的38 kHz载波频率,硬件电路使用9个按键实现远程控制,具有可反复编程和凋试的BDM接口,工作电压低至1.8V,系统采用锂电池供电,低功耗模式下的电流值是lμA。
2 系统说明
设计中使用MC9RS08KA2作为发送和接收处理器。发送部分执行键盘扫描、数据帧编码、载波频率产生,以及通过红外线发送数据帧。接收部分执行键盘扫描、数据帧解码、LCD和LED显示。
2.1 硬件部分
MC9RS08KA2具备内部时钟ICS模式,不需要额外的外部时钟源,内部RC晶振的最高时钟频率町达20 MHz(10MHz的总线频率)。如图1所示,6引脚封装具备足够的资源来识别9个按键。尽管MC9RS08KA2没有内建ADC转换器,但是可通过内建的比较器来实现ADC功能。通过电阻网络,比较器检测不同按键按下的电压值来识别按键。通过按下按键将KBl2连接到地,因此CPU上会有键盘中断发生,同时按键电阻网络会在ACMP一引脚产生一个确定的电压。当KB1中断发生时,开始对RC网络(R1l和C3)的ACMP+充电。当检测到有按键按下时,通过计算ACMP+的充电电压达到电阻网络在ACMP一上的分压值的时间来识别按键(Sl~S9)。
为了保持系统的低功耗,MC9RS08KA2直接驱动红外线发射,如图2所示。电路使用PTA3来驱动IR发射硬件接收部分(如图4所示)使用PDIP-8封装的MC9RS08KA2,通过数码管显示不同的按键数值,通过PTA3驱动继电器来控制电器(如灯具或直流电机)。
2.2 软件部分
当系统发送部分上电后,MC9RS08KA2进行初始化。时钟提升到16MHz,初始化变量寄存器,使能低压监测,I/0口和PTA2设置为输入,使能KBl2的下降沿中断方式。初始化完成后,主程序进入待机模式。当有按键按下时,系统唤醒,CPU执行按键识别和数据帧的发送;之后系统继续进入低功耗模式.继续准备按键唤醒。发送流程如图5所示。
接收部分(如图6所示)则在初始化I/O口后,检测是否有红外信号。若无,则继续检测;若有,则判断数据帧地址码足否与接收机相匹配。若匹配,则通过调用数码显示二极管。当PTA3是逻辑高电平时,IR发射二极管接通。
R14是一个限流电阻,可以通过改变输出的PWM信号占空比来改变IR发射二极管的输出功率。硬件发送部分原理图如3所示。
驱动程序显示地址号,同时驱动继电器动作;若不匹配,则继续下一轮接收。
结 语
系统采用了Freescale公司低成本、高集成度的IC,因而体积很小,功能强大。该方案用于控制家居室内不同的电器,用一个红外发射器,多个相同的红外线接收装置,发射器不同的按键对应不同的电器。实际证明,系统能正常识别每种不同电气设备,无误动作,效果良好。