宋血平 蒋井盛 朱永祥 朱 敏

(湖南工业大学电气与信息工程学院,湖南 株洲412007)

0 引言

近年来,红外遥控已经涉及到各类家电和工业设备。但各厂商遥控器互不兼容,应用范围有限,传统的单一控制和被动控制红外遥控器已无法满足人们的需求。随着科技的发展,单片机在控制领域起到越来越重要的作用,触摸屏和彩屏的成本的逐渐降低,所以采用以单片机90C51为控制核心进行遥控应用设计,分为控制模式和学习模式,加之采用触摸屏输入,彩屏显示界面。可极大地提高遥控器人机交互性能。

1 整体原理

学习型遥控器就是基于对BIT‘0’和BIT‘1’的识别(由于NEC协议的编码长度比较通用,故采用)BIT‘0’是先高电平为0.56ms然后低电平为0.56ms。BIT‘1’是先高电平为0.56ms然后低电平为1.69ms。

当NEC协议遥控器在按键按下后,会周期性地发出同一种32位二进制码,它的周期约为108ms。一般大约是45--63ms之间,当一个键按下超过了36ms,振荡器就会使芯片激活,从而发射一组编码脉冲,这个编码脉冲一般是由一个起始码(大约9ms),一个结果码(大约4.5ms),低 8 位地址码(大约 9-18m),高 8 位地址码(大约 9-18ms),8 位数据码(大约9-18ms)和这8位数据的反码(大约9-18ms)组成。

本方案是基于单片机的学习型遥控器,红外波形的学习模式方案如图1和控制模式方案如图2。以STC90C516R+为核心,通过测量NEC协议红外遥控信号的脉冲宽度来原封不动地保存红外遥控编码,并利用单片机定时器T0实现38KHz载波,根据触摸屏相应操作单片机控制输出红外遥控波形,实现了红外波形的学习和控制。

2 硬件实现

硬件整体原理如图3所示。

红外解码模块设计。采用PC 1838一体化红外解码器,它的第二脚接地,第三脚接5V的电源,第一脚接到单片机的P3.2中。PC 1838红外解码后,单片机P3.2将接收高低电平脉冲信号,下降沿有效。单片机可以对红外编码长度进行测量并记录下来。

片外EEPROM模块设计。当在本系统学习模式情况下,选择彩屏上的按键(即触摸)。就会有相应的数据存储到AT24C08中,在断电的情况下也不会使数据丢失。当在本系统控制模式情况下,选择彩屏上的按键(即触摸)。就会有相应的数据从AT24C08中调用出来。

TFT彩屏显示模块设计。TFT-GGIN7009UTSW-W是属于电阻屏, 它的 22,23,24,25,26,27,28,29 脚接 STC90C516RD+单片机的1,2,3,4,5,6,7,8脚。TFT-GGIN7009UTSW-W的14,15,16,17,18,19,20,21脚接STC90C516RD+单片机的32,33,34,35,36,37,38,39脚。TFTGGIN7009UTSW-W的11,12,13脚接STC90C516RD+单片机的28,27,26脚 TFT-GGIN7009UTSW-W1,2,3,4,5,6,7,31,32,33,38,39 脚接地。TFT-GGIN7009UTSW-W的8,9,10脚接电源。

触摸屏控制模块设计。XPT2046是属于集成在TFTGGIN7009UTSW-W一块触摸屏控制芯片。XPT2046的11,12,14,15,16分别接STC90C516RD+的21,25,23,22,24脚。XPT2046采用差分控制模式。可有效的提高精度。当人触碰触摸屏时,X-,X+,X-,Y+坐标值将会进行读取,进行差分运算后,存储到相应的地址中,从而达到了人机交互的目的。

红外载波发射模块设计。运用STC90C516RD+的定时器T0产生38KHZ的载波 (因为我们设置TO定时器的TH0=0xFF,TL0=0xE6;也就是大约每26us产生一次中断,而在程序中,根据接收的编码的PWM高低电平可以控制是否发射出去。从而就得到的38KHZ的载波。)然后信号经过电阻后到达了8050的基极,8050发射极接地,集电极接电阻后接红外发光二极管的负极。当有信号从STC90C516RD+发出时,通过三极管8050控制红外二极管的亮灭。

单片机模块设计。本模块采用STC90C516RD+单片机,它是本系统的CPU。它的20,40脚接地和5V电源,为单片机供电。它的1,2,3,4,5,6,7,8脚接彩屏的高位数据入口,32,33,34,35,36,37,38,39脚接彩屏的低位数据入口,26,27,28脚分别接彩屏的WR,RS,CS。13脚接彩屏的复位脚,上述这些脚控制着彩屏。它的18,19脚接12MHZ晶振。它的9脚接复位电路。它的21,22,23,24,25接触摸屏的PEN,T-CS,DI,CLK,DO脚,以读取触摸屏坐标信号。它的10,11脚接入小按钮,以选择控制模式和学习模式。它的12脚接PC 1838,以读取接收红外高低电平脉冲信号。它的14脚要用于定时器T0接红外发射模块,以发射学习到的红外高低电平脉冲信号。它的15脚接蜂鸣器,以方便人机交流。

3 调试

整体调试如图。图4、图5为一级界面。图6、图7为二级界面。图8、图9为二级界面。

当系统通电或者是复位的时候。系统会首先进入图4一级界面A,等待3秒钟后,自动刷新到图5一级界面B中。

学习模式时,选择按键K1时,界面会刷新,进入图6二级界面A中,其界面上有七个模块可供选择,每个模块代表一个遥控器。当选择图6二级界面A中的前三个(model 1,model2,model3)模式后,会调用如图8三级界面A所示。当人按下如图8三级界面A所示界面相应按键的时候,学习型遥控器会对红外遥控信号进行学习,学习成功后,蜂鸣器响,并且相应按键变红后变绿。当选择图6二级界面 A中的后四个(model4,model5,model6,model7)模式后,会调用如图9三级界面B所示。当人按下如图9三级界面B所示界面相应按键的时候,学习型遥控器会对红外遥控信号进行学习学习成功后,蜂鸣器响并且相应按键变红后变绿。

控制模式时,选择按键K2时,界面会刷新,进入图7二级界面B中,其界面上有七个模块可供选择,每个模块代表一个遥控器。当选择图7二级界面B的前三个(model 1,model2,model3)模式后,会调用如图8三级界面A所示。当人按下如图8三级界面A所示界面相应按键的时候,学习型遥控器会对红外遥控信号进行学习,学习成功后,蜂鸣器响,并且相应按键变红后变绿。当选择图7二级界面B的后四个(model4,model5,model6,model7)模式后,会调用如图9三级界面B所示。当人按下如图9三级界面B所示界面相应按键的时候,学习型遥控器会对红外遥控信号进行学习,学习成功后,蜂鸣器响,并且相应按键变红后变绿。

[1]肖伸平,欧伟明,何静,凌云,刘剑.单片机原理与应用:系统设计[M].电子工业出版社,2009.

[2]郑锋,王巧芝,李英建,刘瑞国.51单片机应用系统典型模块开发大全[M].中国铁道出版社,2004.

[3]徐爱钧,彭秀华.KEIL CX51 V7.0单片机高级语言编程与uVISION2应用实践[M].北京:电子出版社,2005.

[4]何立民.单片机高级编程[M].北京:北京航天航空大学出版社,2000.

[5]KEIL Software Inc.RTX51 Real-time Kernel[OL].http://www.keil.com/rtx51,2004.