首页 > 技术支持 > 8位单片机

基于MC9RS08KA2的红外远距离多键控制方案设计

作者:北京昊天诚业科技有限公司 何此昂

引言

  在空调和许多家电应用中,常常使用无线数据接口(如红外通信)来发送和接收数据,在红外通信中基本的要求是: 待机模式低功耗,低电压操作,低成本,简易的代码调制来客户化定制不同的模式。

  本方案包括发送和接收部分。设计中采用6引脚DFN封装的MC9RS08KA2来实现红外远程控制;采用6引脚的BDM接口实现Flash在线编程和调试。红外远程控制发送部分通过红外线发射产生数字控制帧到接收部分。红外发送二极管和红外接收调制元件是红外控制的重要器件,作为家居应用,红外载波频率的典型值是38 kHz。 对于不同的发射和接收设计,红外线数据帧模式都是确定的,它依赖于应用的要求。

  载波频率是38 kHz,在红外线数据传输中考虑到低功耗问题,占空比设计成1/3,红外发射二极管导通时间为8 μs,截止时间为18 μs。相对于占空比为1/2时,红外发射二极管导通时间为13 μs,截止时间为13 μs,功耗降低了很多。数据位0/1表示基于调制信号的导通和截止时间。数据位0表示载波导通和截止时间都是0.5 ms;数据位1表示载波导通时间是0.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.8 V,系统采用锂电池供电,低功耗模式下的电流值是1 μA。

2 系统说明

  设计中使用MC9RS08KA2作为发送和接收处理器。发送部分执行键盘扫描、数据帧编码、载波频率产生,以及通过红外线发送数据帧。接收部分执行键盘扫描、数据帧解码、LCD和LED显示。

2.1 硬件部分

  MC9RS08KA2具备内部时钟ICS模式,不需要额外的外部时钟源,内部RC晶振的最高时钟频率可达20 MHz(10 MHz的总线频率)。如图1所示,6引脚封装具备足够的资源来识别9个按键。尽管MC9RS08KA2没有内建ADC转换器,但是可通过内建的比较器来实现ADC功能。通过电阻网络,比较器检测不同按键按下的电压值来识别按键。通过按下按键将KBI2连接到地,因此CPU上会有键盘中断发生,同时按键电阻网络会在ACMP-引脚产生一个确定的电压。当KBI中断发生时,开始对RC网络(R11和C3)的ACMP+充电。当检测到有按键按下时,通过计算ACMP+的充电电压达到电阻网络在ACMP-上的分压值的时间来识别按键(S1~S9)。

基于MC9RS08KA2的红外远距离多键控制方案设计
图1

  为了保持系统的低功耗,MC9RS08KA2直接驱动红外线发射,如图2所示。电路使用PTA3来驱动IR发射二极管。当PTA3是逻辑高电平时,IR发射二极管接通。R14是一个限流电阻,可以通过改变输出的PWM信号占空比来改变IR发射二极管的输出功率。硬件发送部分原理图如3所示。

基于MC9RS08KA2的红外远距离多键控制方案设计
图2

基于MC9RS08KA2的红外远距离多键控制方案设计
图3

  硬件接收部分(如图4所示)使用PDIP8封装的MC9RS08KA2,通过数码管显示不同的按键数值,通过PTA3驱动继电器来控制电器(如灯具或直流电机)。

基于MC9RS08KA2的红外远距离多键控制方案设计
图4

2.2 软件部分

  当系统发送部分上电后,MC9RS08KA2进行初始化。时钟提升到16 MHz,初始化变量寄存器,使能低压监测,I/O口和PTA2设置为输入,使能KBI2的下降沿中断方式。初始化完成后,主程序进入待机模式。当有按键按下时,系统唤醒,CPU执行按键识别和数据帧的发送;之后系统继续进入低功耗模式,继续准备按键唤醒。发送流程如图5所示。

基于MC9RS08KA2的红外远距离多键控制方案设计
图5

  接收部分(如图6所示)则在初始化I/O口后,检测是否有红外信号。若无,则继续检测;若有,则判断数据帧地址码是否与接收机相匹配。若匹配,则通过调用数码显示驱动程序显示地址号,同时驱动继电器动作;若不匹配,则继续下一轮接收。

基于MC9RS08KA2的红外远距离多键控制方案设计
图6

结语

  系统采用了Freescale公司低成本、高集成度的IC,因而体积很小,功能强大。该方案用于控制家居室内不同的电器,用一个红外发射器,多个相同的红外线接收装置,发射器不同的按键对应不同的电器。实际证明,系统能正常识别每种不同电气设备,无误动作,效果良好。