《低功耗_基于MSP430的触摸屏万能遥控器的设计》由会员分享,可在线阅读,更多相关《低功耗_基于MSP430的触摸屏万能遥控器的设计(13页珍藏版)》请在金锄头文库上搜索。
1、基于MSP430的触摸屏万能遥控器的设计摘要本设计针对家庭遥控器众多所设计,将各类遥控器整合为一个,加上触摸屏技术,使得遥控器操控起来更方便。利用MSP430作为主控制芯片,STC89C52控制触摸屏,两者之间进行串口通信,89C52将触摸到的命令发送给MSP430,根据相应指令,MSP430发出对应的红外信号,从而控制家电。关键字: MSP430 STC89C52 红外发射 触摸屏 万能遥控器Abstract In oder to help people get rid of keeping so many household remote controllers, this kind of
2、 design can control almost all of your household applicants. With touch screen technology, it will be more convenient.MSP430 is used as master control chip, and STC89C52 is used to control the touch screen. STC89C52 send commands to the MSP430 via serial port and MSP430 drive LED emitting infrared s
3、ignal to control equipments.Keywords:MSP430 STC89C52Infrared EmissionTouch Screen Universal Remote Controller1. 引言随着社会经济的高速发展,居民生活水平的提高,家庭里家用电器也越来越多,比如电视机、DVD、投影仪、空调等等,伴随而来的问题是家里的各种遥控器越来越多,时常会因为拿错遥控器而烦恼。本设计就是为了解决这个矛盾而设计,将各类遥控器整合为一个。采用触摸屏作为按键和显示,使得人机交流更加方便。要完成本设计,需要解决以下几个问题:(1)需要解决触摸屏控制的问题,如何定义触摸屏的坐标
4、,以及遥控器界面的设计。(2)如何对遥控器的红外信号编码,存储,调用,发射。(3)如何实现STC89C52与MSP430G2231之间的通信。2. 系统方案 系统方案如图一所示:发送MSP4303.2寸触摸屏信号处理红外发送模块USB扩展EEPROM存储图一 基本结构图SCT89C52该系统利用MSP430作为主的控制部分,STC89C52控制四线电阻式触摸屏,MSP430和STC89C52之间通过SPI进行串口通信。触摸屏作为整个系统的显示和按键模块,当有按键被按下时,触摸屏显示相应的命令,89C52作为从机发出该命令对应的指令,当MSP430收到指令后,根据指令做出存储、扩展还是发射红外信
5、号的动作。本设计提前将遥控器的编码存储在了AT24C02里面, MSP430可以读取数据以及存储新的数据。当MSP430收到STC89C52的发射红外命令反馈时,读取AT24C02存储的数据,经过信号处理,由红外发射模块将信号发射出去。系统设计中,最重要的两个部分:(1)如何控制触摸屏。触摸屏控制技术,包含有设计界面,触摸坐标的定义及校准,界面的存储等问题。界面的设计是最重要的环节,它是用户对成品最直接的感触对象,界面的柔和,新颖等因素直接决定了用户是否对它满意。因此,设计合适的界面在触摸屏技术中非常重要。精确的触摸按键,是触摸屏技术能否成功的关键因素。使用坐标定位,可以使得触摸屏使用起来更加
6、精确。在设定坐标时,根据触摸屏四个特殊的角的坐标数值,利用Matlab计算坐标与触摸屏尺寸之间的系数关系以及偏离参数,得到坐标(X,Y)与触摸屏尺寸之间的关系为:其中,x和y表示触摸屏的宽和长尺寸。由于触摸屏本身没有存储器件,而单片机本身的RAM又非常小,因此需要一个外部存储来存储用户界面。将设计好的用户界面放置在SD卡中,通过STC89C52的调用,将界面显示在触摸屏显示器上。(2)怎样对各类遥控器解码。由于每个厂家生产的遥控器类型不同,所以编码的方式也不一样。但是目前市场上的遥控器基本都是按照RC5协议来编码。在RC5协议中,信号是由2位起始码、1位控制码、5位系统码和8位指令码组成。其中
7、控制键每按一次,值反转一次。解码遥控器时,红外接收板通过SM0038接收红外信号,送至STC89C52的串口RXD,由软件通过查询采集红外信号进行解码,然后将数据发送至PC机,通过分析,经过实验,确认数据正确后,通过MSP430将数据存储到AT24C02。3. 系统硬件设计(1)自制一个51的最小系统板,将各引脚用排针引出,连接CH341AP,将程序可以通过USB下载到51芯片中,方便实验操作。触摸屏方面,传输的数据为16位,分为高8位和低8位传输可以大大提高传输效率,因此将触摸屏的高8位连接到STC89C52的P0口,低8位连接到STC89C52的P2口,此外,还有LCD,触摸、SD卡的使能
8、端,控制端,分别连接到P1口和P3口。图二 触摸屏连接图(2)MSP430发射红外模块,将发光二极管连接到三极管的集电极,信号连接在基极,当有信号时,高电平通过,三极管导通,红外管发出红外线,低电平通过,三极管截止,红外管不工作,通过这样,可以使得红外管发出的红外线的频率和信号的频率相同,将信号发送出去。图三 红外发射(3)MSP430与STC89C52的连接,通过SPI的方式,进行两块单片机之间的通信。MSP430作为主控芯片,接收由STC89C52反馈回来的信息,通过处理,并响应STC89C52。利用SPI串口通信,可以大大提升两片单片机的通信速率,减少反应时间。4. 系统软件设计开始触摸
9、屏显示选择按键MSP430单片机显示信号发生器信号处理器,将信号转换成红外信号红外发射模块发送红外信号接收电器存储器件图四 系统流程图根据系统流程图来设计软件部分,按模块化编程的方式编写,分为两个大的部分。(1)触摸屏作为单独的一部分 ,利用SCT89C52控制,针对触摸屏显示图片的各个按键坐标进行编程。分为三个模块:对界面按键的坐标编程。由于各个界面的按键位置不同,在触摸屏上的坐标也就对应不同,因此需要对每一个按键重新编程。当有按键按下时,STC89C52还需要通过串口发送数据给MSP430。读取SD卡内部数据。触摸屏显示器不能读取SD卡中的数据,要想显示用户界面,就需要通过编程调用SD卡数
10、据,然后将SD卡数据显示在液晶屏上。(2) MSP430控制的红外以及存储部分编程。MSP430读取AT24C02存储的数据,然后通过红外发射模块发出大概38KHz的红外信号。由于本设计还有学习功能,用户可以自己下载编码,因此还需要对AT24C02更改、存储数据进行编程。5. 系统创新(1)利用MSP430低功耗的特点,节约耗电,使用时间长,可充电设计,免除了更换电池带来的麻烦,更加环保;(2)MSP430与STC89C52之间的通信,将各个分散的模块组装在一起,集成度高;(3)触摸屏设计方面,利用Matlab计算数据,使得触摸屏按键更加精准,误差降低在0.026%以内。6. 评测与结论评测:
11、由于实验室条件有限,本设计只对KONKA电视的开机、选台、制式、日历以及菜单进行了遥控测试,测试中,系统运行稳定,触摸准确,系统反应灵敏,电视机根据指令做出了相应的反应。因此本设计完成了当初计划的部分,实现了利用触摸屏技术的万能遥控器的设计。结论:尽管本设计完成了计划部分,但是由于STC89C52单片机的处理速度有限,当触摸屏在主菜单,如果用户想要选择电视机或者空调等界面,刷新的速度非常慢,需要等待20s左右,这也是本设计的不足之处。改进:(1)将STC89C52单片机换成其他处理速度较快的单片机,比如STC12C52系列,或者可以直接使用MSP430系列单片机,比如MSP430F149。(2)用户可以自己设计界面,将任何一个新遥控器学习到万能遥控器中。(3)利用GSM网络或以太网实现远程遥控,让用户可以出门在外实时的控制“万能”遥控器,进而控制家里的电器设备。附录图五 51最小系统板图六 MSP430的LaunchPad图七 红外发射模块图八 触摸屏模块图九 电视机界面图十 空调界面图十一 机顶盒界面图十二 整体系统第 - 12 - 页 共 14 页