位置:51电子网 » 技术资料 » 测试测量

基于PIC单片机的低功耗键盘接口设计

发布时间:2008/6/3 0:00:00 访问次数:616

        

    

     湖北工业大学电气与电子工程学院童 静

    

    引言

    

    目前,针对单片机应用的专用键盘接口芯片可谓种类繁多,但大多数都应用于对功耗没有严格要求的场合,满足不了一些小巧的便携式设备(例如遥控器的低功耗、低成本要求)。tc9148是一款应用广泛的红外发码专用芯片,一般与红外接收芯片tc9149配合使用来构成一套完整的遥控发射、接收系统。而由于tc9148具有功耗极低且价格低廉的特点,凶而在许多要求有键盘控制的低功耗、低成本应用中可将其作为键盘接口芯片使用,并直接与微处理器连接实现复杂的键盘处理。本文采用tc9148作为键盘接口芯片,给出了基于microchip公司的低功耗单片机pic16f73实现的低功耗键盘接口设计方法。

    

    1 tc9148传送波形分析

    

    tc9148是一款功耗极低且价格低廉的红外发码专用芯片。用tc9148设计键盘接口电路的关键是对tc9148的输出信号进行解码。下面就详细地讨论一下tc9148的传送波形。

    

    1.1 基本传送波形

    

    tc9148的振荡频率fosc为455 khz,传送的基本波彤是图1所示的12位串行码。其中c1~c3为用户码标识,h、s1和s2为连续/单发码标识,k1~k6为键输人标识。根据tc9148数据手册介绍,这里:a=(1/fosc)×192≈420μs。然而,通过示波器观察及后续的程序调试发现,每位码的实际位宽约为420μs,即图1中的4a才等于420μs。

    

    

    1.2 载波

    

    为了增加红外信号的发送和接收距离,一般需要50~100 ma的电流通过红外发射二极管,所以,从减少电池消耗考虑,需尽可能的减少红外发光管的导通时间。tc9148的发码信号采川占空比为1:3的载波调制波形,其载波频率为38 hz。

    

    图2和图3所示为用示波器观察所得的脉冲凋制后的传送波形。图2是位码“0”和“1”的波形表示。图3则是发射一个完整码的实际波形。

    

    

    由于应用了载波调制,tc9148的发射码波形相对比较复杂,采用常用的定时读取高低电平的方式解码有一定的难度,且误码率也比较高。本设计考虑到载波调制部分具有电平变化的特点,因而采用pic16f73单片机的rb端口电平变化中断来作为辅助判断。

    

    2 键盘接口电路

    

    本设计将tc9148作为键盘接口芯片使用,其硬件电路的设计相对比较简单,其电路如图4所示。图4中,tc9148的串行输出端txout接pic16f73的rb4脚,其它外围电路采用其典型连接方法,键盘则应根据需要做一定裁减。另外,电路调试中,有时tc9148会起振困难,因此应注意合理设置晶振电路中的电容c9和c8的值,一般的经验是:c8略小于c9。

    

    

    可见,键盘接口设计的关键就是实现pic16f73对tc9148传送码的正确解码。考虑到tc9148传送波形的复杂性,pic16f73的接入引脚采用的是rb口的rb4,即加入了rb端口电平变化中断作为辅助判断。

    

    3 解码算法的设计

    

    3.1 tc9148发码起始的判断

    

    根据tc9148的传送波形,无论“0”或“1”,起始处均为载波调制波形,这一点具有电平变化的特点,因此,开rb电平变化中断后,一旦进入该中断程序即认为开始发码。

    

    3.2 传送波形中“0”和“1”的判断

    

    事实上,本设计中解码的难点是对传送波形中“0”和“1”的判断。最初在考虑解码时,也曾尝试过通过精确的延时、定时程序并按照时序来读取波形,但通过大量的测试发现:tc9148数据手册上提供的波形与实际示波器上观察的波形略有出入,致使设计时无法得到精确的延时数值;另外,由于加入了载波,但载波调制部分的低电平保持时间较短,硬件无法灵敏反应,致使误码率很高。故而只能再做其它的打算。

    

    仔细

        

    

     湖北工业大学电气与电子工程学院童 静

    

    引言

    

    目前,针对单片机应用的专用键盘接口芯片可谓种类繁多,但大多数都应用于对功耗没有严格要求的场合,满足不了一些小巧的便携式设备(例如遥控器的低功耗、低成本要求)。tc9148是一款应用广泛的红外发码专用芯片,一般与红外接收芯片tc9149配合使用来构成一套完整的遥控发射、接收系统。而由于tc9148具有功耗极低且价格低廉的特点,凶而在许多要求有键盘控制的低功耗、低成本应用中可将其作为键盘接口芯片使用,并直接与微处理器连接实现复杂的键盘处理。本文采用tc9148作为键盘接口芯片,给出了基于microchip公司的低功耗单片机pic16f73实现的低功耗键盘接口设计方法。

    

    1 tc9148传送波形分析

    

    tc9148是一款功耗极低且价格低廉的红外发码专用芯片。用tc9148设计键盘接口电路的关键是对tc9148的输出信号进行解码。下面就详细地讨论一下tc9148的传送波形。

    

    1.1 基本传送波形

    

    tc9148的振荡频率fosc为455 khz,传送的基本波彤是图1所示的12位串行码。其中c1~c3为用户码标识,h、s1和s2为连续/单发码标识,k1~k6为键输人标识。根据tc9148数据手册介绍,这里:a=(1/fosc)×192≈420μs。然而,通过示波器观察及后续的程序调试发现,每位码的实际位宽约为420μs,即图1中的4a才等于420μs。

    

    

    1.2 载波

    

    为了增加红外信号的发送和接收距离,一般需要50~100 ma的电流通过红外发射二极管,所以,从减少电池消耗考虑,需尽可能的减少红外发光管的导通时间。tc9148的发码信号采川占空比为1:3的载波调制波形,其载波频率为38 hz。

    

    图2和图3所示为用示波器观察所得的脉冲凋制后的传送波形。图2是位码“0”和“1”的波形表示。图3则是发射一个完整码的实际波形。

    

    

    由于应用了载波调制,tc9148的发射码波形相对比较复杂,采用常用的定时读取高低电平的方式解码有一定的难度,且误码率也比较高。本设计考虑到载波调制部分具有电平变化的特点,因而采用pic16f73单片机的rb端口电平变化中断来作为辅助判断。

    

    2 键盘接口电路

    

    本设计将tc9148作为键盘接口芯片使用,其硬件电路的设计相对比较简单,其电路如图4所示。图4中,tc9148的串行输出端txout接pic16f73的rb4脚,其它外围电路采用其典型连接方法,键盘则应根据需要做一定裁减。另外,电路调试中,有时tc9148会起振困难,因此应注意合理设置晶振电路中的电容c9和c8的值,一般的经验是:c8略小于c9。

    

    

    可见,键盘接口设计的关键就是实现pic16f73对tc9148传送码的正确解码。考虑到tc9148传送波形的复杂性,pic16f73的接入引脚采用的是rb口的rb4,即加入了rb端口电平变化中断作为辅助判断。

    

    3 解码算法的设计

    

    3.1 tc9148发码起始的判断

    

    根据tc9148的传送波形,无论“0”或“1”,起始处均为载波调制波形,这一点具有电平变化的特点,因此,开rb电平变化中断后,一旦进入该中断程序即认为开始发码。

    

    3.2 传送波形中“0”和“1”的判断

    

    事实上,本设计中解码的难点是对传送波形中“0”和“1”的判断。最初在考虑解码时,也曾尝试过通过精确的延时、定时程序并按照时序来读取波形,但通过大量的测试发现:tc9148数据手册上提供的波形与实际示波器上观察的波形略有出入,致使设计时无法得到精确的延时数值;另外,由于加入了载波,但载波调制部分的低电平保持时间较短,硬件无法灵敏反应,致使误码率很高。故而只能再做其它的打算。

    

    仔细

相关IC型号

热门点击

 

推荐技术资料

音频变压器DIY
    笔者在本刊今年第六期上着重介绍了“四夹三”音频变压器的... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!