基于Cortex-M3的触摸屏计算器设计_第1页
基于Cortex-M3的触摸屏计算器设计_第2页
基于Cortex-M3的触摸屏计算器设计_第3页
基于Cortex-M3的触摸屏计算器设计_第4页
基于Cortex-M3的触摸屏计算器设计_第5页
已阅读5页,还剩102页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、上海工程技术大学毕业设计(毕业论文)学 院电子电气工程学院专 业电子信息工程班级学号学 生 指导教师 题 目基于Cortex-M3的触摸屏计算器设计 目 录摘要 4Abstract 50 引言 21 触摸屏技术原理和分类 21.1 触摸屏简介 21.2 触摸屏分类 21.2.1 电阻式触摸屏 21.2.2 电容式触摸屏 22 硬件平台设计 22.1 LM3S9B96开发板介绍 22.1.1 开发板概述 22.2 Cortex-M3处理器介绍 22.2.1 Cortex-M3处理器特点 22.2.2 Cortex-M3内核结构 22.3 开发板上3.5带触摸液晶显示模块 22.3.1特性 22.

2、3.2控制接口 22.3.3背光 22.3.4电源 22.3.5 电阻触摸屏 22.3.6触摸屏接口设计 23 软件系统设计 23.1编程软件 Keil uVision4 23.2 驱动程序原理 23.2.1 触摸屏驱动原理 23.2.2 显示屏驱动原理 23.2.3 驱动程序文件功能 23.3 功能实现部分设计 23.3.1 中断控制功能编写 23.3.2 显示函数编写 23.3.3 运算符函数编写 24 设计过程 24.1 Keil uVision4的使用 24.2 设计实施与测试调试 24.2.1 软件功能初始化 24.2.2 显示界面编写调试 24.2.2 函数功能编写调试 24.3

3、设计成果展示 25 结论 2参考文献 67附录 68译文 98原文说明 109摘 要随着多媒体信息查询的与日俱增,人们越来越多地谈到触摸屏这种极大方便了那些不懂电脑操作的用户的技术。这种人机交互方式,它赋予了多媒体以崭新的面貌,是极富吸引力的全新多媒体交互方式。触摸屏在我国的应用范围非常广阔,主要有公共信息的查询,如电信局、税务局、银行、电力等部门的业务查询;城市街头的信息查询;此外还可广泛应用于领导办公、工业控制、军事指挥、电子游戏、点歌点菜、多媒体教学、房地产预售等。将来,触摸屏还要走入家庭。随着城市向信息化方向发展和电脑网络在日常生活中的渗透,信息查询都会以触摸屏显示内容可触摸的形式出现

4、。本设计是利用一个TFT触摸屏完成的一款,仿照现实生活中常见的计算器,将其功能移植到触摸屏上进行操作的计算器设计。同时,随着技术的不断发展,单片机应用越来越广泛,各种成熟的产品层出不穷。Cortex-M3处理器是ARM公司于2004年推出的基于ARMv7-M架构的处理器,它是一个低功耗处理器,具有门数少,中断延迟小,调试容易等特点。本设计利用Cortex-M3为核心处理器的LM3S9B96开发板,搭载TFT液晶触摸屏,利用Keil uVision4软件,完成触摸屏计算器编程部分设计。 从而完成软件功能的在触摸屏上的实现,以展示触屏技术和Cortex-M3嵌入式系统相结合后的成果。关键词:触摸屏

5、技术, Cortex-M3嵌入式系统, Keil uVision4软件平台Design of a Touch Screen Calculator Based on Cortex-M3AbstractWith the increasing utilization of information search in multimedia, touch screen is on everyones lips. That kind of interaction between people and computer entitles multimedia brand-new image that mak

6、es touch screen technology an attractive and interactive means of communication. Touch screen is applicable in various fields domestically, mainly public information searching such as business in telecommunication, taxation, banking and electricity and street information searching. In addition, touc

7、h screen is widely used in office, industrial control, military, electronic games, ordering services, multimedia teaching and real estate market. This design is a TFT touch screen of a modeled on real life calculator, and transplanted to its function calculator designed for operation on the touch sc

8、reenMeanwhile, thanks to the advancement of technologies and wider use of DSP,a multitude of mature products come hard on wheels of another. Cortex-M3 processor, one based on ARMv7-M shipped by ARM, is energy-efficient with few gate accounts, little postponement of interruption as well as convenienc

9、e of debugging. This paper, using S7000 experiment board with Cortex-M3 as core processor, TFT liquid crystal touch screen and Keil uVision4 software, explores a fraction of design of touch screen computing program which is downloaded to the experiment board so as to showcase the rationale and fruit

10、s of the touch screen technology.Key words::Touch screen technology, Cortex-M3 Embedded System, Keil uVision4 Software Platform基于Cortex-M3的触摸屏计算器设计0 引言随着多媒体信息查询的与日俱增,人们越来越多地谈到触摸屏,因为触摸屏作为一种最新的电脑输入设备,它是目前最简单、方便、自然的随着技术的不断的进步,即使许多从未使用过电脑的人也能很快的上手通过它来操作各类电子产品。同时触摸屏具有坚固耐用、反应速度快、节省空间、易于交流等许多优点。触摸屏作为一种新型的人

11、机界面,从一出现就受到关注。它的简单易用,强大的功能及优异的稳定性使它非常适合于工业环境,甚至可以用于日常生活之中,应用非常广泛,比如:自动化停车设备、自动洗衣机、天车升降控制、生产线监控等,甚至可以用于智能大厦管理、会议室声光控制、温度调整触控技术可以将这些应用改进为采用几项现有触控技术之一的计算机。触摸屏是用户和计算机之间实现互动的最简单、最直接的方式。尽管触摸屏技术相对较新(有两家大型触摸屏制造商声称在 70 年代开始运营),但是用户和触摸屏交互的基本方式已非常久远:你的手会伸向你想要的东西。这几乎是所有儿童和成人的本能。各行各业的公司都已成功地将触摸屏的效用发挥到各自的应用中。航空公司

12、使用它来模拟机舱、训练飞行员驾驶飞机;房地产公司通过它使购房者能够在弹指之间观看商品房的全彩图像;贺卡公司使用它来让客户创建自己的个性化卡片;餐馆饭店使用它来简化店内的 POS 终端;医科学校使用它来教导护士学员如何应对危机状况。触摸屏的这5个基本种类是:电阻技术触摸屏、电容技术触摸屏,表面声波技术触摸屏、红外线扫描技术触摸屏、矢量压力传感技术触摸屏。这是从技术原理上对触摸屏的分类,矢量压力传感技术触摸屏己退出历史舞台。每一类触摸屏都有其各自的优缺点,而用户也知道不可能所有的应用场合都是某一类触摸屏最适合。要想挑选最适合的,关键就要了解每一类触摸屏技术的工作原理和特点。本次系统设计,是利用一个

13、TI公司生产的,搭载了四线电阻TFT液晶显示模块的Cortex-M3实验板,设计的一个简单的触摸屏计算器。是一款简单实用的触摸屏产品,通过本设计,可以了解和展示触屏功能的简单原理和技术特点,并利用Keil uVision4这一款强大的嵌入式编程软件,用C语言进行相关软件部分的开发,并将通过编译的代码,下载到开发板上,完成实际的嵌入式功能应用,从而完成本次设计。1 触摸屏技术原理和分类本次设计主要的特点是一个带触摸屏功能的数字计算器,所以首先介绍触摸屏的分类和工作原理。1.1 触摸屏简介触摸屏是最方便、简单、自然的输入手段,完全不懂电脑的人可以上来就操作电脑。用户看着显示内容,想选什么就简单地用

14、手触摸一下。通过触摸屏,人们可以尽情的游畅于您的应用软件,查询他们感兴趣的信息。既然触摸屏是最适合信息查询的输入设备,各发达国家都积极的进行着触摸屏的研制开发,犹如PC从286、386发展到奔腾机一样,触摸屏也从低档向高档发展,从红外线式、电阻式走到电容感应式,现在发展到了表面声波触摸屏和五线电阻触摸屏。性能越来越可靠,技术越来越先进,如美国的EloTouch表面声波触摸屏,安装的是一块没有任何贴膜覆层的纯玻璃,不管是从清晰度还是从耐用程度上都昭示着触摸屏成熟产品时代的到来。由于触摸屏本身的特点,对触摸屏的要求除了要求非常透明、精确定位之外,还要求它长时间保持准确、工作稳定可靠、不影响美观和不

15、容易被破坏。因此,评判一种触摸屏技术的优劣,主要就是从这几点来考察1.2 触摸屏分类针对目前国内市场上主流触摸屏技术,一般分为矢量压力传感技术触摸屏,表面声波触摸屏、电阻触摸屏、电容感应触摸屏、红外线触摸屏。其中矢量压力传感技术触摸屏已退出历史舞台。触摸屏红外线价格低廉,但其外框易碎,容易产生光干扰,曲面情况下失真;电容触摸屏设计理论好,但其图象失真问题很难得到根本解决;电阻屏的定位准确,但其价格颇高,且怕刮易损。表面声波触摸屏解决了以往触摸屏的各种缺陷,清晰抗暴,适于各种场合,缺憾的是触摸屏表面的水滴、尘土会使触摸屏变的迟钝,甚至不工作。按照触摸屏的工作原理和传输信息的介质,我们把触摸屏分为

16、四种,它们分别为电阻式、红外线式、电容感应式以及表面声波式,下面就对上述的各种类型的触摸屏进行简要介绍 。1.2.1 电阻式触摸屏电阻触摸屏的主要部分是一块与显示器表面非常配合的电阻薄膜屏,这是一种多层的复合薄膜,由一层玻璃或有机玻璃作为基层,表面涂有一层叫ITO的透明导电层,上面再盖有一层外表面硬化处理、光滑防刮的塑料层,它的内表面也涂有一层导电层(ITO或镍金),在两层导电层之间有许多细小(小于千分之一英寸)的透明隔离点把它们隔开绝缘。当手指触摸屏幕时,两层导电层在触摸点位置就有了一个接触,控制器侦测到这个接通并计算出X、Y轴的位置,这就是所有电阻技术触摸屏共同的最基本原理。图1.1 电阻

17、触摸屏的结构及模拟量电阻屏的原理电阻触摸屏的两层ITO工作面必须是完整的,在每个工作面的两条边线上各涂一条银胶,一端加5V电压,一端加0V,就能在工作面的一个方向上形成均匀连续的平行电压分布。在侦测到有触摸后,立刻AD转换测量接触点的模拟量电压值,根据它和5V的比例公式就能计算出触摸点在这个方向上的位置。在此有必要提一下两种透明的导电涂层材料:ITO,氧化钢,弱导电体,特性是当厚度降到1800个埃(埃10-10米)以下时会突然变得透明,透光率为80,再薄下去透光率反而下降,到300埃厚度时又上升到80。但有遗憾是ITO在这个厚度下非常脆,容易折断产生裂纹。 ITO是所有电阻技术触摸屏及电容技术

18、触摸屏都用到的主要材料,实际上电阻和电容技术触摸屏的工作面就是ITO涂层。镍金涂层,五线电阻触摸屏的外层导电层使用的是延展性极好的镍金涂层材料,外导电层由于频繁触摸,使用延展性好的镍金材料目的是为了延长使用寿命,但是成本较为高昂,镍金导电层虽然延展性好,但是只能作透明导体,不适合作为电阻触摸屏的工作面,因为它导电性太好,不宜作精密电阻测量,而且金属不易做到厚度非常均匀。 第一代四线电阻技术的两层ITO作面工作时都加上5V到0V的均匀电压分布场:一个工作面加竖直方向的,一个工作面加水平方向的。引线至控制器总共需要四根电缆。因为四线电阻触摸屏靠外的那层塑胶及ITO涂层被经常触动,一段时间后外层薄薄

19、的ITO涂层就会有了细小的裂纹,显然,导电工作面一旦有了裂纹,电流就会绕之而过,工作而上的电压场分布也就不可能再均匀,这样,在裂纹附近触摸屏漂移严重,裂纹增多后,触摸屏有些区域可能就再也触摸不到了。四线电阻触摸屏的基层大多数是有机玻璃,不仅存在透光率低、风化、老化的问题,并且存在安装风险,这是因为有机玻璃刚性差,安装时不能捏边上的银胶,以免薄薄的ITO和相对厚实的银胶脱裂,不能用力压或拉触摸屏,以免押断ITO层。有些四线电阻触摸屏安装后显得不太平整就是因为这个原因。ITO是无机物,有机玻璃是有机物,有机物和无机物是不能良好结合的,时间一长就容易剥落。如果能够生产出曲面的玻璃板,玻璃是无机物,能

20、和ITO非常好的结合为导电玻璃,那电阻触摸屏的寿命不是能够大大延长吗?第二代五线电阻技术触摸屏的基层使用的就是这种导电玻璃,不仅如此,五线电阻技术把两个方向的电压场通过精密电阻网络都加在玻璃的导电工作面上,我们可以简单的理解为两个方向的电压场分时加在同一工作面上,而外层镍金导电层只仅仅用来当作纯导体,有触摸后靠既检测内层ITO接触点电压又检测导通电流的方法测得触摸点的位置。五线电阻触摸屏内层ITO需四条引线,外层只作导体仅仅一条,至控制器总共需要5根电缆。因为五线电阻屏的外层镍金导电层不仅延展性好,而且只作导体,只要它不断成两半,就仍能继续完成作为导体的使命,而身负重任的内层1TO直接与基层玻

21、璃结合为一体成为导电玻璃,导电玻璃自然没有了有机玻璃作基层的种种弊端,因此,五线电阻屏的使用寿命和透光率与四线电阻屏相比有了一个飞跃:五线电阻屏的触摸寿命是3千5百万次,四线电阻屏则是小于1百万次,且五线电阻触摸屏没有安装风险,同时五线电阻屏的ITO层能做得更薄,因此透光率和清晰度更高,几乎没有色彩失真。 不管是四线电阻触摸屏还是五线电阻触摸屏,它们都是一种对外界完全隔离的工作环境,不怕灰尘、水汽和油污,它可以用任何物体来触摸,可以用来写字画画,比较适合工业控制领域及办公室内有限人的使用。电阻触摸屏共同的缺点是因为复合薄膜的外层采用塑胶材料,不知道的人太用力或使用锐器触摸可能划伤整个触摸屏而导

22、致报废。不过,在限度之内,划伤只会伤及外导电层,外导电层的划伤对于五线电阻触摸屏来说没有关系,而对四线电阻触摸屏来说是致命的。1.2.2 电容式触摸屏电容技术的触摸屏是一块四层复合玻璃屏,玻璃屏的内表面和夹层各涂有一层ITO,最外层是只有0.0015毫米厚的矽土玻璃保护层,夹层ITO涂层作为工作面,四个角上引出四个电极,内层ITO为屏蔽层以保证良好的工作环境。 当用户触摸电容屏时,由于人体电场,用户手指头和工作面形成一个耦合电容,因为工作面上接有高频信号,于是手指头吸收走一个很小的电流。这个电流分从触摸屏四个角上的电极中流出,并且理论上流经这四个电极的电流与手指到四角的距离成比例,控制器通过对

23、这四个电流比例的精密计算,得出触摸点的位置。图1.2通过四个电流比较计算出触摸点位置电容触摸屏的透光率和清晰度优于四线电阻屏,当然还不能和表面声波屏和五线电阻屏相比,电容屏反光严重,而且,电容技术的四层复合触摸屏对各波长光的透光率不均匀,存在色彩失真的问题,由于光线在各层间的反射,还造成图像字符的模糊。 图1.3电容触模屏与表面声波屏结构差异比较 电容屏在原理上把人体当作一个电容器元件的一个电极使用,当有导体靠近与夹层ITO工作面之间耦合出足够量容值的电容时,流走的电流就足够引起电容屏的误动作。我们知道,电容值虽然与极间距离成反比,却与相对面积成正比,并且还与介质的绝缘系数有关。因此,当较大面

24、积的手掌或手持的导体物靠近电容屏而不是触摸时就能引起电容屏的误动作,在潮湿的天气,这种情况尤为严重,手扶住显示器、手掌靠近显示器7厘米以内或身体靠近显示器15厘米以内就能引起电容屏的误动作。电容触摸屏最外面的矽土保护玻璃防刮擦性很好,但是怕指甲或硬物的敲击,敲出一个小洞就会伤及夹层ITO,不管是伤及夹层ITO还是安装运输过程中伤及内表面ITO层,电容屏就不能正常工作了。1.2.3 红外式触摸屏红外触摸屏是利用X、Y方向上密布的红外线矩阵来检测并定位用户的触摸。通常红外触摸屏在显示器的前面安装一个外框,靠藏在外框中的电路板在屏幕四边排布红外发射管和红外接收管,一一对应形成横竖交叉的红外线矩阵。用

25、户在触摸屏幕时,手指就会挡住经过该位置的横竖两条红外线,因而可以判断出触摸点在屏幕的位置。图1.4红外线扫描式触摸屏的原理安装红外触摸屏的方法非常简单,只要用胶或双面胶将这个框架固定在显示器前面即可。大多数红外触摸屏的控制器直接设计在藏在框架中的电路板上,也有红外触摸屏把控制器设计在单独的小盒中。控制器通过键盘接口或者串行口直接与主机通信,走键盘接口的红外触摸屏用户甚至可以直接读取键盘口发来的触摸屏数据而无需任何驱动程序。1.2.4 表面声波触摸屏表面声波触摸屏的触摸屏部分可以是一块平面、球面或是柱面的玻璃平板,安装在CRT、LED、 LCD或是等离子显示器屏幕的前面。这块玻璃平板只是一块纯粹

26、的强化玻璃,区别于别类触摸屏技术是没有任何贴膜和覆盖层。玻璃屏的左上角和右下角各固定了竖直和水平方向的超声波发射换能器,右上角则固定了两个相应的超声波接收换能器。玻璃屏的四个周边则刻有45度角由疏到密间隔非常精密的反射条纹。如图1.5所示图1.5 InteIliTouch触摸屏包括一块表面交叉着X、Y方向声表面波的强化玻板以Y轴为例,发射换能器把由控制器产生的5MHz的电信号转换为超声波能量发出。换能器基座的设计使得它具有较狭窄的方向角向左传播声表面胶能量,在传递过程中,又被底边的45度反射条纹向上反射成屏幕表面竖直方向的均匀面传播,然后又被上边的反射条纹向右聚成线传播至Y轴接收换能器,并最终

27、转为电信号回传给控制器。图1.6 接收信号在触摸位置对应处衰减在没有触摸的时候,接收信号的波形与参照波形完全一样。当手指触摸屏幕时,手指吸收了一部分声波能量,而控制器则侦测到接收信号在某一时刻上的衰减,由此可计算出触摸点在Y轴上的位置,同样的原理可以得到触摸点在X轴的位置,如图1.6所示。除了一般触摸屏都能响应的X、Y坐标外,表面声波触摸屏还响应其独有的第三轴Z轴坐标,也就是能感知用户触摸压力大小值。其原理是由接收信号衰减处的衰减量计算得到。三轴一旦确定,控制器就把他们传给主机。因为表面声波技术非常稳定,而表面声波触摸屏的控制器靠测量衰减时刻在时间轴上的位置来计算触摸位置,所以表面声波触摸屏非

28、常稳定,精度也非常高,目前表面声波技术触摸屏的精度通常是40964096。表面声波触摸屏的优势主要有:寿命最长(美国权威的电子工程师杂志的报告是:同一位置触摸5干万次无故障),属于半永久性的产品,极好的防刮性,透光率(92)和清晰度最高,保持清晰透亮的图像质量,没有色彩失真,这些优点来源于它的触摸屏是没有任何贴膜和覆层的纯玻璃,并且不象有覆层玻璃的触摸屏在边角遭受压力时内部应力不可预测的可能在某处集中,因此,纯玻璃的触摸屏安装风险小;此外,表面声波触摸屏技术绝对没有漂移,安装后无须再进行校准,直接采用迪卡尔直角坐标系,数据转换无失真。综上所述,市面上各种各样的触摸屏,分别有各自的特点,应用领域

29、,以及生产成本等。如表1.1是市面上常见的各类触摸屏技术特点总结。表1.1 市场上常见触摸屏性能比较 类别性能表面声波电容红外五线电阻四线电阻清晰度很好字符图象糊较好字符图象模糊反光性很少严重有较少透光率92%(极限)85%75%55%色彩失真无有无有分辨率409640961024102440324096409610241024压力轴影响有无无无无漂移无漂移无无无防刮擦非常好且不怕硬物一般,怕硬物敲击一般,怕锐器主要缺陷野蛮使用不怕一般外框易碎怕锐器差反应速度10ms15-24ms50-300ms10ms10-20ms材料纯玻璃四层复合膜透光外壳镀于玻璃镀于有机玻璃多点触摸智能判断中心点左上角

30、中心点中心点电磁场干扰没有此问题有没有此问题没有此问题没有此问题防尘不怕不怕不能挡住透光部分不怕不怕寿命5千万次半永久性2千万次太多传感器损坏概率大3千5百万次1百万次安装风险不易碎易碎易摔碎外壳不易碎易损坏ITO市场返修率021%40%5%30%外观不影响不影响影响外观不影响不平整现场维修不需要需经常校准清洁外壳不需要不需要本次设计基于LM3S9B96开发板这样一个实验平台,所搭载的是3.5寸的四线电阻式触摸屏,虽然其具有相当的缺点。因为每次触按,上层的PET和ITO都会发生形变,而ITO材质较脆,在形变经常发生时容易损坏。一旦ITO层断裂,导电的均匀性也就被破坏,上面推导坐标时的比例等效性

31、也就不再存在,因此四线电阻触摸屏的寿命不长。但是,其开发成本较低,硬件连接简单,显示效果良好,并且驱动程序设计相对简单等特点。所以针对本次设计,所采用了是样的四线电阻式触摸屏。2 硬件平台设计本次设计主要以LM3S9B96开发板作为主要的开发平台,首先在这里对开发板的结构,和最重要的Cortex-M3微处理器,以及搭载的触摸屏液晶显示模块进行一个介绍。2.1 LM3S9B96开发板介绍Stellaris LM3S9B96 开发板为基于ARM CortexTM-M3 内核的Stellaris LM3S9B96 高性能微控制器的开发提供了完整的系统平台。2.1.1 开发板概述LM3S9B96 是S

32、tellaris Tempest-class 微控制器家族的一员。Tempest-class 系列微控制器具有高达80MHZ 的时钟速度、一个外扩设备接口(EPI)和音频IIS 接口。除了集成了新的硬件特性外,DK-LM3S9B96 开发板还有丰富的其他Stellaris 芯片中也有的外设。开发板包含一个板上调试接口(ICDI)电路,支持JTAG 和SWD 两种方式调试。板上集成了一个标准ARM 20 针引脚调试接口,可以调试同类Stellaris ARM 器件。Stellaris LM3S9B96 开发套件可以加快Tempest-class 系列微控制器的开发速度。其实物图如下图2.1。图2

33、.1 实物样图结构框图如图2.2图 2.2 开发板结构框图根据结构图,可以看出以该开发板以 LM3S9B96微控制器为整个开发板的核心,围绕了开发板,外扩了丰富的外设资源,其中包含了以下一些部件资源: ICDI USB 电缆拥有提供调试,通信和供电的能力 灵活,广泛的外设开发平台 彩色液晶图形显示 TFT 液晶模块,320 240 分辨率 电阻式触摸界面 80 兆赫晶振 LM3S9B96 256 K 的FLASH 96 K SRAM 和集成以太网 物理层+MAC ,USB OTG 接口和CAN 通信 8 MB 的SDRAM(选配板) EPI 接口(选配板) I2S 立体声音频编解码器 线路输入

34、/输出 耳机输出 麦克风输入 控制器区网络(CAN)接口 10/100 BaseT 以太网 On-The-Go(OTG)接口 轮型电位器(可用于目录导航) SD 读卡槽 内部电路调试(ICDI) JTAG,SWD,SWO 调试方式 标准ARM 二十针JATG 调试接口 USB 虚拟串口 跳线分流,以方便重新分配的I / O 资源 丰富的源代码资源如图形库,USB 库,外设库等2.2 Cortex-M3处理器介绍LM3S9B96 微处理器采用了Cortex-M3作为核心处理器,针对当前 32 位 MCU 用户, 该产品系列率先在业内整合了 Cortex-M3 和 Thumb-2 指令集。Thum

35、b-2 技术可以使 16 位和 32 位指令并存,带来了代码密度和性能的最佳平衡。Thumb-2 比纯 32 位代码占用少 26%,同时带来了 25% 的性能提升,可有效降低系统成本。这些具备领先技术的芯片使用户能够以传统的 8 位和 16 位器件的价位来享受 32 位的性能,而且所有型号都是以小占位面积的封装形式提供。2.2.1 Cortex-M3处理器特点Cortex-M3 主要为了在微控制器、汽车车身系统、工业控制系统和无线网络对功耗和成本铭感的嵌入式应用领域实现搞系统性能而设计的。Cortex-M3处理器是为存储器和处理器的尺寸对产品成本影响极大的各种应用专门开发设计的,其结构如图2所

36、示。它整合了多种技术,减少使用内存,并 在极小的RISC内核上提供低功耗和高性能,可实现由以往的代码向32位微控制器的快速移植。Cortex-M3处理器是使用最少门数的ARM CPU,相对于过去的设计大大减小了芯片面积,可减小装置的体积或采用更低成本的工艺进行生产,仅33000门的内核性能可达l,2DMIPS/MHz。 此外,基本系统外设还具备高度集成化特点,集成了许多紧耦合系统外设,合理利用了芯片空间,使系统满足下一代产品的控制需求。Cortex-M3处理器结合了执行Thumb-2指令的32位哈佛微体系结构和系统外设,包括Nested Vectored Interrupt Controlle

37、r和Arbiter总线。该技术方案在测试和实例应用中表现出较高的性能:在台机电180 nm工艺下,芯片性能达1.2 DMIPS/MHz,时钟频率高达l00 MHz。Cortex-M3处理器还实现了Tail-Chaining中断技术。该技术是一项完全基于硬件的中断处理技术,最多可减少12个时钟周期数, 在实际应用中可减少70%中断;推出了新的单线调试技术,避免使用多引脚进行JTAG调试,并全面支持RealVicw编译器和RealView调试产 品。Realview工具向设计者提供模拟、创建虚拟模型、编译软件、调试、验证和测试基于ARMv7架构的系统等功能。 其结构如图 2.4 所示图2.4 Co

38、rtex-M3处理器结构图同时,在为微控制器应用而开发的Cortex-M3也拥有了以下一些性能: 实现单周期Flash应用最优化; 准确快速地中断处理。永不超过12周期,仅6周期tail-chaining(末尾连锁); 有低功耗时钟门控(Clock Gating)的3种睡眠模式; 单周期乘法和乘法累加指令; ARM Thumb-2混合的16/32位固有指令集,无模式转换; 包括数据观察点和Flash补丁在内的高级调试功能; 原子位操作,在一个单一指令中读取/修改/编写; 1.25DMIPS/MHz(与0.9DMIPS/MHz的ARM7和1.1DMIPS/MHz的ARM9相比)。2.2.2 Co

39、rtex-M3内核结构Cortex-M3 中央内核是基于哈佛结构的,分别为指令和数据有独立的总线。不同与ARM7处理器所使用的冯诺依曼结构,指令和数据共同使用的同一条信号总线和内存。通过同时能够从内存读出指令和数据,Cortex-M3处理器对多个操作并行执行,提高程序处理的速率。内核流水线分3个阶段:取指、译码和执行。当遇到分支指令时,译码阶段也包含了预取值功能,这样提高了执行速度。处理器在译码阶段自行对分支目的进行取指。在稍后的执行过程中,处理完分支指令后便知道下一条要执行的指令。如果分支不被使用,那么指令可以随时被执行;如果分支被使用了,那么分支指令可以同时被使用,空闲的时间限制为一个周期

40、。Cortex-M3内核包含了一个译码器,适用于传统的Thumb和新型Thumb-2指令,和一个支持硬件乘法的和硬件除法的先进ALU,控制逻辑和用于链接其它处理器的接口。Cortex-M3处理器是一个32位处理器,有一个32位宽的数据路径,寄存器库和内存接口。其中13个通用寄存器,两个堆栈寄存器,一个链接寄存器,一个程序计数器,和一些包含程序状态寄存器的特殊寄存器。Cortex-M3提供两种操作工作模式,线程(Thread)和处理器(Handler),及两个等级的代码访问方式有特权和无特权 能够在不牺牲程序的安全性的情况下运行复杂和开放的系统。无特权代码执行限制或者排除某些资源的访问,例如特定

41、的指令和具体的内存位置。线程模式是一种特殊的操作模式,同时提供有特权和无特权的代码。当进入处理器模式,在这个模式期间所有的代码都处于有特权的。此外,所有的操作均根据以下两种工作状态进行分类:Thumb代表常规执行操作,Debug代表调试操作。Cortex-M3处理器是支持高达4GB的可寻址内存空间,并提供简单和固定的内存映射。这些存储空间为代码(代码空间)、SRAM(内存空间),外部内存/设备,内部/外部空间。另外还提供了一个特殊空间用来存放特定地址。基于传统的ARM7处理其仅提供访问对齐的数据(aligned transfers),只允许沿对齐的字边界才可以对数据存取和访问。Cortex-M

42、3处理器采用非对齐处理数据方式,能够让非对齐数据在单核访问中进行传输。当使用非对齐传输时,这些传输将转变为多个对齐传输,且这一过程为程序员所见。Cortex-M3除了支持单周期的32位乘法操作以外,还支持带符号的和不带符号的除法操作,根据操作数的大小,在2到12个时钟周期内,通过SDIV和DIV来完成指令操作。Cortex-M3处理器在数学运算能力方面的改进,使它成为众多数字集中处理的理想选择 ,例如传感器读取和缩放硬件环路仿真系统。2.3 开发板上3.5带触摸液晶显示模块LM3S9B96开发板提供了一个320*240 像素分辨率的TFT 液晶图形显示屏。为防止刮伤显示屏,在显示屏上面贴了一层

43、防护膜,使用的时候可以去掉这层防护膜。TFT-LCD 即薄膜晶体管液晶显示器。其英文全称为:Thin Film Transistor-Liquid CrystalDisplay。TFT-LCD 与无源TN-LCD、STN-LCD 的简单矩阵不同,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。TFT-LCD 也被叫做真彩液晶显示器。本次设计主要是在这块液晶显示屏上输出最终的设计结果的。所以,主要介绍本显示模块在板上的配置和相关控制接口。2.3.1特性 本液晶显示器采用的是Kitronix 公

44、司的K350QVG-V1-F 显示屏,具有 320*240 分辨率和 3.5 寸262K 色彩。有较宽的温度范围,配置了 白色的LED 背光灯,同时集成RAM。并且有电阻触摸屏,可以完成触屏操作的相关功能。2.3.2控制接口彩色LCD 模块内嵌了一个多种工作模式的并行接口控制IC。开发板使用8 位的8080 工作模式,通过微控制器端口D 提供数据总线。表2.1列出了与LCD 相关的信号线。表2.1 LCD 相关信号线微控制器引脚板上功能跳线名称PE6/ADC1Touch X+X+PE3Touch Y-Y-PE2Touch X-X-PE7ADC0Touch Y+Y+PB7LCD 复位LRSTnP

45、D0.7LCD 数据总线0.7LD0.7PH7 LCD数据/控制选择LDCPB5LCD读选通LRDnPH6LCD 写选通LWRn-背光控制BLON2.3.3背光为了LCD 正常显示,必须为背光LCD 提供电源,U7(FAN5331B)为背光LED 提供恒定的20mA 电流。背光不受微控制器控制,通过一个跳线帽可将背光控制信号线接地,从而关闭背光。推荐使用微控制器的一个GPIO 口来控制这个信号线。因为FAN5331B 运行在恒流模式,如果LCD 关断时,它的输出电压会跳变(变高),为了预防IC 和D3 产生过电压故障,开发板使用一个稳压二极管(D4)来钳位电压。虽然背光需要的极限电流只有20m

46、A,但还是加大了开发板的总电流。为了避免背光电路过热,可将一个跳线帽接到BLON 跳线端子,以关断背光电路。2.3.4电源LCD 模块内部具有基电压发生器,因此仅需要单跟3.3V 直流电源。2.3.5 电阻触摸屏4 线电阻触摸屏直接与微控制器相连,使用微控制器的两路ADC 通道和2 路GPIO 口。2.3.6触摸屏接口设计根据前面的相关结构内容,我们了解到,开发板上的某些引脚是复用的,需要改变跳线来实现不同的功能。针对本次的触摸屏设计,主要关注到的是触摸屏和LCD显示屏相关的使能引脚,和一些功能性的引脚。具体引脚与对应功能如表格2.1。表2.1 触屏显示相关管脚及功能JP57X+触摸屏模拟信号

47、JP61JP58Y-触摸屏模拟信号JP59X-触摸屏模拟信号JP60Y+触摸屏模拟信号JP54JP38LRSTNLCD复位信号JP23BLENLCD的背光开关,断开表示使能JP6LCD0LCD的数据线D0JP29、JP36JP7LCD1LCD的数据线D1JP27、JP37JP8LCD4LCD的数据线D4JP26JP9LCD5LCD的数据线D5JP31JP11L_ENLCD开关,连接表示拉低使能LCDJP12L_DISLCD开关,连接表示拉高禁止LCD如表格所示,JP23 和JP12要断开时才能使LCD背光打开,并且使之能够处于工作状态。其LCD显示模块对应电路图和SPI接口电路如图2.5,2.

48、6,2.7所示图2.5 SPI接口电路图图2.6 LCD背光电路图图 2.7 LCD 模块电路图在实际操作中,参考电路图的引脚位置作为标准的使LCD触摸屏能够完整正常工作的引脚插接标准。如图2.8图 2.8 LCD触摸屏引脚相关开发板上原理图3 软件系统设计 本次设计主要部分是软件系统的设计,下面以编程思想和算法介绍为主体来介绍本次设计的软件部分介绍。3.1编程软件 Keil uVision4 本次设计的软件部分采用了Keil uVision4来进行编写编译,将程序下载到实验板中进行调试。Keil uVision是德国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使

49、用接近于传统c语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序达到接近于汇编的工作效率。KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强, 使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision2 IDE可为它们提供单一而灵活的开发环境。200

50、9年2月发布Keil Vision4,Keil Vision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。新版本支持更多最新的ARM芯片,还添加了一些其他新功能。 Keil uVision4提供了强大的软件编译功能,作为本次设计的软件部分提供了基础的软件平台,对本软件的学习使用是完成设计的基础。图3.1 软件的开始界面在创建工程,选择好对应与实验板相同的器件后,完成工程的创建,即完成了软件设计部分的第一步。这里针对LM3S9B96,选择

51、如图所示的器件。图3.2 器件选择界面在完成了工程创建后,就可以开始软件部分设计。整个工程包含了驱动程序,主函数程序和相关的库文件组成。库文件由Keil uVision4 提供,在创建好项目后要添加相应的库文件,放入library文件夹中。本软件的一些学习使用方法会在后面进行一些详细的讲解。3.2 驱动程序原理3.2.1 触摸屏驱动原理在本次设计中,主要是关于四线电阻式触摸屏的驱动原理,其驱动原理是与四线是电阻式触摸屏的结构原理是相关的。将其结构原理,与相关操作得到对应参数值,能够实现相对应的操作。四线电阻器的结构原理如图3.3所示图3.3 四线电阻式触摸屏 四线电阻式触摸屏,在玻璃或丙烯酸基

52、板上覆盖有两层透平,均匀导电的ITO层,分别做为X电极和Y电极,它们之间由均匀排列的透明格点分开绝缘。其中下层的ITO与玻璃基板附着,上层的ITO附着在PET薄膜上。X电极和Y电极的正负端由“导电条”(图中黑色条形部分)分别从两端引出,且X电极和Y电极导电条的位置相互垂直。引出端X-,X+,Y-,Y+一共四条线,这就是四线电阻式触摸屏名称的由来。当有物体接触触摸屏表面并施以一定的压力时,上层的ITO导电层发生形变与下层ITO发生接触,该结构可以等效为相应的电路如图3.4所示图3.4 四线电阻式触摸屏等效电路 计算触点的X,Y坐标分为如下两步: 1. 计算Y坐标,在Y+电极施加驱动电压Vdriv

53、e, Y-电极接地,X+做为引出端测量得到接触点的电压,由于ITO层均匀导电,触点电压与Vdrive电压之比等于触点Y坐标与屏高度之比。2. 计算X坐标,在X+电极施加驱动电压Vdrive, X-电极接地,Y+做为引出端测量得到接触点的电压,由于ITO层均匀导电,触点电压与Vdrive电压之比等于触点X坐标与屏宽度之比。图3.5为触摸屏测量周期的方式。通过将XP连接到Vdd 且XM接地可以测定X触点在X轴平面的位置。从YP或YM 触摸屏连接器上测得的电压与触点X坐标成比例。图3.5 参数测量方式通过将YP连接到Vdd且YM接地可以测定Y触点在Y轴平面的位置。从YP或YM触摸屏连接器上测得的电压

54、与触点Y坐标成比例。若测量触摸压力,需将压力与电阻联系起来。由于触摸压力最常用于确定是手指或触笔的存在,而不是接触的强度,因此没必要进行高精度压力测量。在本项目中,压力测量所采用的是具有8位分辨率的ADC,而不是用于X和Y位置测量的12位分辨率。测量触摸压力的方法有数种。本方法要求X平面电阻已知,并对X触点位置(X)以及触摸屏的两个附加截面电阻(Z1和Z2)可以测量;得知YP(Vdd)电压与XM(接地)电压并测量 XP(Z1)与YM(Z2)值。利用等式3.1可以计算出触点电阻。 式3.1如果用户长期不触摸屏幕,则无需运行或测量。于是触摸屏进入休眠状态,等待触笔中断。一旦用户触摸,则产生一个中断

55、,于是触摸屏控制器唤醒并测量相关触摸参数。3.2.2 显示屏驱动原理1.TFT液晶显示模块显示原理本系统LCD显示模块的控制器为ILI9320,该控制器自带显存,总大小为(240*320*18/8),即18位模式(26万色)下的显存量。模块的16 位数据线与显示单元的数据位对应关系为RGB 565方式6,如图3.6所示:图3.6位数据与显存对应关系图最低5位代表蓝色,中间6位为绿色,最高5位为红色。数值越大,表示该颜色越深。通过向显示单元中输入相应代表色彩的值来得到需要显示的图像。2.ILI9320 控制原理ILI9320作为控制芯片具有一系列的数据传输及控制功能,所需用到的命令如图3.7所示

56、:图3.7 ILI9320 常用命令R0:该命令具有有两个功能:进行写操作,则仅最低位SOC为有效,用于开启或关闭振荡器。进行读操作,则返回的是控制器的型号。是这个命令较为重要的功能就是可以取得到控制器的型号,代码在取得控制器的型号之后,可以针对不同型号的控制器,进行不同的初始化。因为93xx系列的初始化都比较类似,可以用一个代码兼容好几个控制器。 R3:入口模式命令。I/D0、I/D1、AM这3个位控制了屏幕的显示方向。(1)AM:控制GRAM更新方向。当AM=0的时候,地址以行方向更新。当AM=1的时候,地址以列方向更新。(2)I/D1:0:当更新了一个数据之后,根据这两个位的设置来控制地址计数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论