版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 江苏科技大学本科毕业设计(论文) 江苏科技大学江苏科技大学本科毕业设计(论文)本科毕业设计(论文) 江苏科技大学本科毕业设计(论文) I基于 ARM 的 GPS 导航定位系统设计ARM-based GPS navigation system design 摘要摘要GPS(全球定位系统)是一种全方位的实时定位技术,随着GPS技术的发展,以ARM处理器作为主CPU的嵌入式硬件平台几乎已经成为信息产业的硬件标准。一方面,它具有体积小、性能强、功耗低、可靠性高等特点;另一方面,它为高速、稳定地运行嵌入式操作系统提供了硬件基础。本文以Windows CE为嵌入式操作系统,对基于ARM的GPS定位系统的
2、开发进行了研究与实现。 硬件平台设计以三星公司的ARM920T核的S3C2410为微处理器,对以下三个方面的 江苏科技大学本科毕业设计(论文) II技术进行了研究:一是对GPS及嵌入式技术进行了介绍, 介绍了GPS技术原理、特点、和定位方式;二是搭建基于ARM的硬件平台,对电源电路,存储电路等进行了设计;三是对GPS模块及通讯接口进行了设计。关键字关键字: : GPS ARM Windows CE操作系统AbstractGPS (Global Positioning System) is a comprehensive real-time positioning technology, wit
3、h GPS technology to ARM processor as the main CPU of the embedded hardware platform has almost become the information industry hardware standards.On the one hand ,it has a small,strong performance,low power,high reliabity:on the other hand,it is high speed,stable operation and provides a hardware ba
4、sed embedded operating system.In this paper, Windows CE embedded operating system, ARM-based GPS positioning system and implementation of 江苏科技大学本科毕业设计(论文) IIIdevelopment studied.Platform designed to Samsung S3C2410 ARM920T microprocessor core, on the following three techniques were studied: one on t
5、he GPS and embedded technologies are introduced, introduced the principle of GPS technology, features, and positioning means ; Second, ARM-based hardware platform built on the power supply circuit, memory circuit design, etc.; Third, GPS module and the communication interface is designed.Keywords: G
6、PS ARM Windows CE Operation System目目 录录第一章第一章 绪论绪论.11.1 嵌入式技术研究背景.11.2 GPS 技术研究背景 .2第二章第二章 GPSGPS 技术基本原理技术基本原理.32.1 GPS 基本原理 .32.1.1 卫星的位置 .32.1.2 卫星与用户间的相对距离 .42.1.3 卫星信号的解算 .42.1.4 GPS 的定位方式 .5 江苏科技大学本科毕业设计(论文) IV2.2 GPS 发展前景 .6第三章第三章 嵌入式系统设计嵌入式系统设计.83.1 嵌入式系统 .83.2 WINDOWS CE 嵌入式操作系统.83.3 WINDOWS
7、 CE 系统框架.93.4 嵌入式软件平台开发 .103.4.1 Boot Loader 开发 .103.4.2 OAL 开发 .113.5 ARM 技术介绍 .133.5.1 ARM 处理器的体系结构 .133.5.2 ARM920T 微处理器概述 .14第四章第四章 系统硬件及系统硬件及 GPSGPS 模块设计模块设计.154.1 总体硬件设计方案 .154.1.1 系统硬件的选择.154.1.2 S3C2410 处理器 .154.2 系统硬件电路设计 .164.2.1 电源电路 .184.2.2 串口电路.184.2.3 Flash 电路 .194.2.4 SDRAM 电路 .204.2
8、.5 显示电路.214.3 GPS 模块电路设计 .224.3.1 GPS 模块选择 .224.3.2 GPS 模块与主机的串口通信 .23第五章第五章 系统软件设计系统软件设计.255.1 NEMA0183 协议 .255.2 GPS 程序设计 .255.3 用户界面.29总结总结.30致谢致谢.31参考文献参考文献.32附录附录.33 江苏科技大学本科毕业设计(论文) 0第一章第一章 绪论绪论1.11.1 嵌入式技术嵌入式技术研究背景研究背景随着计算机和通信技术的快速发展,嵌入式系统己经广泛渗透到人们的工作、生活中,从家用电器、手持通讯设备、信息终端、仪器仪表到汽车、军事装备、制造工业、过
9、程控制等。尤其是随着嵌入式系统与 Internet 的日益结合,使得嵌入式应用项目越来越多样化,使嵌入式电子产品的功能也日益强大。嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点,是嵌入式系统的核心。而 ARM 处理器具有高性能低功耗、低成本等显著优点,已成为高性能、低功耗嵌入式微处理器的代名词,是目前 32 位、64 位嵌入式处理器中应用最为广泛的一个系列。而英国先进 RISC 机器公司这一生产模式最为成功的典范,既不生产芯片,也不销售芯片, 而是设计出高效的 P 内核,授权给各半导体公司使用;半导体公司在 ARM 技术的基础上,根据自己公司的产品定位,添加自己的设计并推出芯片产品;
10、最后由OEM 客户采用这些芯片来构建基于 ARM 技术的最终应用系统产品。经过十多年的发展,ARM 公司己是业界领先的 IP 供应商。ARM微处理器得到了众多半导体厂家和整机厂商的大力支持,全球己有十多家公司在采用ARM技术,20家最大的半导体厂商中有19家是ARM的用户,包括TI、PHILIPS和INTEL等公司。优良的性能和准确的市场定位极大地丰富了ARM资源,加速了基于ARM核的、面向各种应用系统芯片的开发应用,使得ARM获得了更广泛的应用,确立了ARM技术的市场领先地位。ARM在高性能嵌入式应用领域获得了巨大的成功,己在32位嵌入式应用中稳居世界第一。在2002年,基于ARM核的芯片占
11、据了整个32、64位嵌入式微处理器市场的79.5,全世界已使用了20多亿个核。如今,ARM公司已经成为业界的龙头老大, “每个人口袋中都装着ARM”是毫不夸张的,因为几乎所有的手机、移动设备、PDA都是用基于ARM核的系统芯片开发的。嵌入式操作系统是支持嵌入式系统工作的操作系统软件,一般用于比较复杂的嵌入式系统软件开发中。嵌入式操作系统一般具有实时特点,是嵌入式系统的灵魂,它的出现大大提高了嵌入式系统开发的效率,减少了系统开发的总工作量,而且提高了嵌入式应用软件的可移植性。目前常见的嵌入式操作系统有Linux ,Windows CE 等。其中Windows CE.Net是微软推出的一款面向嵌入
12、式应用的操作系统,它继承了Windows家族 江苏科技大学本科毕业设计(论文) 1优秀的图形用户界面,是一款多任务、模块化、实时性能好、通信能力强大且支持多种CPU的操作系统。Windows CEnet是微软专门为信息设备、移动应用、消费类电子产品等领域设计开发的操作系统产品,己开始广泛应用于数码相机、智能手机、PDA、工业控制等嵌入式领域。1.2 GPSGPS 技术技术研究背景研究背景自从1978年2月22日第一颗GPS试验卫星进入轨道以来,27年间GPS已经显示了它巨大的社会、军事作用与经济、社会效益。GPS卫星发射的导航、定位信号,作为一种时空信息资源,可在全球范围内向无数用户提供位置、
13、速度和时间信息。GPS是一个全球性、全天候、全天时、高精度的导航定位和时间传递系统,空间部分由24颗卫星组成,主要是用于军用,现在己经渐渐转变为军民两用系统。随着GPS向民用开放,它所蕴藏的巨大商机也被发掘出来。GPS不仅用于导弹、飞船的导航定位,更是广泛用于飞机、汽车、船舶的导航定位,公安、银行、医疗、消防,林业、环保、资源调查、物理勘探、电信等都离不开导航定位,特别是随着卫星导航接收机的集成微型化,出现各种融通信、计算机、GPS于一体的个人信息终端,使卫星导航技术从专业应用走向大众应用,成为继通信、互联网之后的IT第二个新的增长点。随着嵌入式系统的高度发展和GPS应用的逐渐广泛,尤其是我国
14、北斗导航系统的使用,现在车载导航系统和手持导航设备的开发已经成为嵌入式系统发展的一个热门方面。GPS主要功能有定位、测量及授时等,而动态(即瞬间)定位是GPS接收机、控制系统、软件系统及显示器等几部分。目前,车载导航系统在美国、日本已经商品化,在我国也早已展开了很多的研究和设计。中国是个GPS应用大国,车载导航监控系统的研制具有广泛的实用价值和市场前景,但是从系统的技术水平和产品的质量和成熟程度来说,我们还处在往上发展时期。目前,城市建设发展速度越来越快,道路变得也越来越复杂,在这种情况下,随着汽车的日益普及,找到一种方式,使人们能够从容的面对错综复杂的交通网,己经迫在眉睫。利用GPS进行车辆
15、定位导航是个不错的选择。因此,研究和开发基于嵌入式系统的GPS定位系统具有现实意义。 江苏科技大学本科毕业设计(论文) 2第二章第二章 GPSGPS 技术基本原理技术基本原理2.12.1 GPSGPS 基本原理基本原理GPS的基本定位原理是:卫星不问断地发送自身的星历参数和时间信息,用户接收到这些信息后,经过计算求出接收机的三维位置,三维方向以及运动速度和时间信息。.1 卫星的位置卫星的位置GPS卫星的位置信息包括在卫星发射的信号中。卫星信号包括三种信号分量:载波、测距码和数据码。内容有:(1)卫星星历及星钟校正参数;(2)测距时间间距;(3)大气附加延迟校正参数;(4)与导航
16、有关的信息;一般的GPS接收机只能接收。接收机根据特定的算法,能够从L1信号中提取出数据码D(t),即导航电文。导航电文的具体内容包括遥测码,转换码,第一数据块,第二数据块,和第三数据块五部分。遥测码(TLM)位于每个子帧的第一个子码,作为捕获导航电文的前导。其中所含的同步信号为各子帧提供了一个同步起点,使用户便于解释电文数据。转换码(HOW)是子帧的第二个子码,它的主要作用是帮助用户从以捕获的C/A码转换到P码的捕获。第一数据快的主要内容是:卫星时钟校正参量及其数据龄期,星期的周数编号和大气校正参数及卫星工作状态等。第二数据块包括第二和第三子帧,它载有卫星的星历。这是GPS定位中最常用的基本
17、数据。第三数据块由第四子帧和第五子帧构成,它的内容为系统内所有卫星的粗略星历、粗略时钟校正量、卫星识别及卫星工作正常与否的字符。每颗卫星的数据需要占用一个子帧,该数据块的目的是使用户只要收到一颗卫星的信号就可以初略知道其他卫星的情况。 江苏科技大学本科毕业设计(论文) 3当GPS接收机接收到信号后,就可以根据这个编排格式提取出计算所需的数据。2.1.2 卫星与用户间的相对距离卫星与用户间的相对距离GPS使用单向测距方法来测定某颗卫星与用户的相对距离。它使用两台时钟,一台在用户接收设备上,一台在卫星上。计算卫星与用户之间的距离,实质上是通过比较GPS接收机中恢复的卫星钟和用户本身的时钟之间的差,
18、即测量卫星钟要传播到用户所花的时间即传播时延得以实现。如果两者时间精确同步,即两时钟信号同频同相,那么,利用距离等于时间乘以光速的原理,得到卫星和用户间的真实距离R=Ct。但是卫星钟和用户钟却不能精确同步,当两者存在钟差t时,这样测得的距离并不是用户和卫星问的真实距离,而是伪距(Pseudo range),简称PR,表示为PR=R+Ct,t取值是有正负的,用户钟慢于卫星钟则取正,反之取负。2.1.3 卫星信号的解算卫星信号的解算用户接收机在接收到卫星发出后的无线电信号后,如果它有与卫星钟准确同步的时钟,便能测量出信号到达的时间,从而算出信号的空间传播时间。再用这个时间乘以信号在空间的传播速度,
19、便能求出接收机与卫星的间距R,R= (2-1)222)()()(zZyYxXiii式(21)中R为观测量,(Xi,Yi,Zi )为卫星的坐标,(x,y,z)为接收机坐标。其中卫星坐标为己知量,接收机坐标待求。这样,理想情况下,如果测得观测点与三颗卫星的距离,便可确定三个未知数,即可完成定位。实际上,一般接收机上的时钟不可能十分准确,因此由它测出的卫星信号在空间的传播时间是不准确的。因而测出的距离也不准确,而是伪距。设接收机在接收卫星信号的瞬间,接收机与卫星导航系统的钟差为定值t,则上述公式就要改写成: R= (2-2)CtzZiyYixXi222)()()(式中,c为卫星信号 传播速度常数,其
20、中的未知数比式(2-1)多了个t,这时,只要测出接收机距四颗卫星的伪距便得到4个这样的方程,如下: R= (2-3)CtzZyYxX212121)()()( R=CtzZyYxX222222)()()( 江苏科技大学本科毕业设计(论文) 4 R=CtzZyYxX232323)()()( R=CtzZyYxX242424)()()(以上四个方程联立便可以解出四个未知量x,y,z和t,即求出了接收机的位置,并可将接收机的时间进行修正。GPS卫星定位原理示意图如2-1所示:图2-1 GPS定位原理图2.1.4 GPSGPS 的定位方式的定位方式用GPS进行定位有许多定位方式,按照参考点的位置不同,定
21、位方式可分为以下几种:(1)静态定位和动态定位如果在定位过程中,用户接收天线处于静止状态,或者明确的说,待定点在协议地球坐标系中的位置,被认为是固定不动的,那么这些待定点的位置的定位测量被称为静态定位。由于待定点固定不动,因此可通过大量重复观测提高定位精度。正因如此,静态定位在大地测量、地球动力学研究等方面获得广泛的应用。相反,在定位过程中,用户接收天线处于运动状态:这是待定点位置随时间变化。确定这些待定点的位置,被称为动态定位。(2)绝对定位和相对定位绝对定位是以地球质心为参考点,测定接收天线(即待定点)在协议地球左边系中的 江苏科技大学本科毕业设计(论文) 5绝对位置,又称为单点定位。单点
22、定位工作和数据处理都比较简单,其定位结果受卫星星历误差和信号传播误差影响显著,所以定位精度较低,适用于低收精度测量领域。如果选择地面某个固定点为参考点,确定接机天线相位中心相对参考点的位置,称为相对定位。由于相对定位至少适用两台以上的接收机,同步跟踪测量4颗以上的GPS卫星,因此所获得的观测量和误差都具有相关性。采用适当的数学模型,即可消除或者削弱观测量所含的误差,使定位结果达到相当高的精度。在我国,GPS在导航、授时校频和高精度测量三个领域应用的比较广泛,涵盖军事部门、交通部门、邮电部门、地矿、煤矿、石油、建筑以及农业、气象、土地管理、金融、公安等部门和行业。在GPS应用领域中,车辆应用所占
23、的比重在各项应用中最大,约占总数的50左右。但是目前市场上的GPS车载终端基本上仅具有定位跟踪及监控管理功能,而集定位、导航与多媒体信息的即时传输于一身的车载定位导航智能管理系统,由于受到许多综合因素的制约,特别是受到我国汽车工业发展现状、电子地图配套限制以及人均GDP水平的整体制约,还没有形成较大的市场。就国际上的发展情况而言,GPS应用产品产业己经是当前国际上八大无线通信产业之一,也是目前世上发展的最快的三大信息产业之一,GPS与3G无线通信网络的结合已成为全球通信导航界的热点。在国际市场上,汽车类GPS设备销售额雄居各类GPS市场之首。据业内人士预计,未来几年,国际上对GPS导航系统的需
24、求量,将以每年50以上的速度递增。到2006年为止,已有近50的新车型和90的豪华车型将具备部分互联网功能,这意味着这些车都已经应用了车载电脑系统,汽车定位及监控、甚至导航产品市场份额。2.22.2 GPSGPS 发展前景发展前景就国际上的发展情况而言,GPS应用产品产业己经是当前国际上八大无线通信产业之一,也是目前世界上发展的最快的三大信息产业之一,GPS与3G无线通信网络的结合已成为全球通信导航界的热点。在国际市场上,汽车类GPs设备销售额雄居各类GPS市场之首。据业内人士预计,未来几年,国际上对GPS导航系统的需求量,将以每年50以上的速度递增。到2006年为止,已有近50的新车型和90
25、的豪华车型将具备部分互联网功能,这意味着这些车都已经应用了车载电脑系统,汽车定位及监控、甚至导航产品市场份额达到百亿美元。 江苏科技大学本科毕业设计(论文) 6在GPS应用领域中,车辆应用所占的比重越来越大,而且随着市场的发展,当前GPS接收机向着小型化、智能化方向发展。以前的GPS接收机由于受到处理器速度的限制,无论在体积上,在处理速度上都无法满足实时性较高的要求。因此,采用嵌入式系统为框架,以高性能的处理器来处理定位信息,成为目前GPS定位系统的发展趋势。 江苏科技大学本科毕业设计(论文) 7第三章第三章 嵌入式系统设计嵌入式系统设计3.1 嵌入式系统嵌入式系统嵌入式系统是以应用为中心,计
26、算机技术为基础,软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机。系统嵌入式系统由包括嵌入式处理器、存储器、传感器和输入输出设备等一系列微电子芯片与器件构成的硬件部分,和嵌入在存储器中的嵌入式操作系统、控制应用软件部分组成,共同实现诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务。与通用型计算机系统相比,嵌入式系统功耗低、可靠性高;功能强大、性能价格比高;实时性强,支持多任务:占用空间小,效率高;面向特定应用,可根据需要灵活定制。嵌入式系统的硬件和软件都必须高效率地设计,去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用中对处理
27、器的选择更具有竞争力。3.23.2 WindowsWindows CECE 嵌入式操作系统嵌入式操作系统Microsoft Windows CE是一个开放的、可裁减的、32位的实时嵌入式窗口操作系统,目前我们使用的版本是Windows CE 5.0。它具有可靠性好、实时性高、内核体积小等特点,被广泛应用于工业控制、信息家电、移动通信、汽车电子、个人电子消费品等各个领域。Windows CE的设计目标(1)模块化和小内存占用 Windows CE被分为一些不同的模块,其中内核(Kernel)、图形窗口事件子系统(GWES)、文件系统和通信(Communication)模块是4个主要模块。每个模块
28、进一步被划分为更小的组件,每个组件代表模块的一种特征。典型的Windows CE设备只有8到32MB的ROM,而Windows CE的最小内核只有500KB,最小内核不仅可以处理进程、线程、同步对象等操作系统对象,而且也可以读写文件、注册表和系统数据库。(2)强大的实时性能力Windows CE强大的中断和线程调度机制和内核操作系统服务保证它为一个硬实时操作系统。根据测试,在一个主频为200MHz的参考系统中,Windows CE的实时性最小可 江苏科技大学本科毕业设计(论文) 8以达到40-60us。(3)强大的开发工具支持Platform Builder是Windows CE操作系统的开发
29、工具,它集成了一个完全的IDE接口,使平台设计者可以完全在IDE中快速创建、调试和部署windows CE操作系统。Windows CE使用与windows9598NT2000相同的WiIl32编程模型,是WiIl32API的一个子集。开发人员可以方便的使用Microsoft Embedded Visual C+以及Visual Studio.Net来开发基于Windows CE的应用程序。Windows CE开发工具集成的模拟器允许开发人员不依赖于目标硬件在开发工作站上完成操作系统和应用程序的开发、调试和部署,大大加速了开发迸程。3.33.3 WindowsWindows CECE 系统框架
30、系统框架Windows CE 为一种分层结构,从底层向上分别为硬件层、OEM层、操作系统层和应用层。这种层次性的结构试图尽量将硬件和软件、操作系统和应用程序隔离开,以便于实现系统的移植,便于进行硬件、驱动程序、操作系统和应用程序等开发人员分工合作、并行开发。(1)硬件层硬件层是指由CPU、存储器、I,O端口、扩展板卡等组成的嵌入式硬件系统,是Windows CE操作系统必不可少的载体。(2)OEM层OEM层主要由CSP代码和BSP代码组成,其中CSP支持不同的微处理器体系结构,而BSP支持不同的微处理器扩展和外设,它由Boot Loader、OAL和驱动程序代码组成。(3) 操作系统层操作系统
31、层既要为下层OEM层提供接口和服务,也要为上层的应用程序提供服务于应用程序编程接口,操作系统层主要有以下模块:核心、Core DLL、对象存储模块、多媒体技术模块、图形窗口和时间系统模块、设备管理器模块、通信服务与网络模块、应用和服务开发模块(4) 应用层应用层是在操作系统提供的Win32 API的基础上,由Wn32 API构建的应用程序组成。一部分是由Windows CE提供的应用程序,另一部分是用户根据自身设备需要定制开发的应用程序。 江苏科技大学本科毕业设计(论文) 93.43.4 嵌入式软件平台开发嵌入式软件平台开发.1 BootBoot LoaderLoader 开发
32、开发Boot Loader是在操作系统内核运行之前运行的一段小程序,通过这段程序,可以初始化硬件设备、建立系统的内存空间映射图,从而将系统的软硬件环境带到一个已知的状态,以便为最终的调用操作系统内核准备好正确的环境,开发步骤如下:(1)创建编译环境Platform Builder集成开发环境提供了命令行编译壳用来编译Eboot源代码。打开命令提示符窗口,首先设置_WINCEROOT环境变量:set_WINCEROUT=wince50;其中为用户的WinCE安装目录,然后进入目录:cd%_WINCEROOT%publiccommonoakmisc: 运行Wince.bat文件。wince.bat
33、为批处理命令,为特定的开发准备环境变量;输入命令:Sysgen;这个命令将创建Boot Loader需要的静态库。(2)实现 Startup 函数Startup函数是Boot Loader的入口代码,是CPU最先执行的代码也是最先编写的源代码,其主要完成CPU的初始化工作。(3)实现Main函数Main函数由Boot Loader的Starup函数调用,而Main函数接着调用Blcommon库中的BootloaderMain函数。在%_WINCEROOT%Platformsmdk2410SrcBootloadereboot下创建一个名为main.c的文件,并添加代码如下:void main(v
34、oid) Bootloader Main(); SpinForever();完成以上功能之后,BootLoader将跳转到主代码中执行,主代码包括对嵌入式开发平台的控制和下载Windows CE内核文件等功能。一般OEM启动代码都是用汇编编写, 江苏科技大学本科毕业设计(论文) 10而主代码一般用C语言编写,它负责其它所有任务,在执行的同时还能够将执行的相关信息显示在屏幕上。(4)配置文件编写Platform Build集成环境下需要编写配置文件辅助开发Eboot,配置文件包括sources文件、makefile文件和.bib文件。source文件和makefile文件用于控制Boot Loa
35、der的编译操作,makefile文件驱动编译过程,而编译信息来自于source文件。 makefile文件包含一个通用的配置文件Makefile.def,在编译工具确定要编译的源文件的时候,它设置一个内部环境变量。编译工具可以使用Makefile.def设置的环境变量来调用编译器、链接器和其他工具。通过Malcefiledef文件中定义的规则,编译工具编译源文件中特定的源代码并且链接任何目标模块。 .bib文件可以定义操作系统镜像要加载的模块文件,细化物理存储的空间分配,详细描述了Boot Loader所使用的内存布局。.2 OALOAL 开发开发OAL是Windows CE
36、内核与目标硬件之间的一个代码层,主要来处理内核与目标硬件设备之间的通信。下面结合S3C2410的BSP中的具体代码对OAL进行分析。 (1)Starup函数Boot Loader和OAL中均包含Startup函数。它的功能大致相同,都是要初始化最小硬件环境,Boot Loader是在为自己的执行准备硬件环境,0AL则是为kemel的执行准备硬件环境。如果可以确定这一硬件部分Boot Loader己经初始化过,则在OAL中不必重复。(2)OEMInit函数 OEMInit函数由内核初始化函数调用,它的最小任务是设置在Startup中没有进行初始化的其余硬件并注册中断,并可以添加附加代码来初始化可
37、选的函数指针和可选得变量来加强系统的功能。OEMInit主要完成以下功能:初始化中断、初始化总线信息、启动KITL、初始化电源管理、初始化可编程中断控制器、初始化时钟、初始化内存。(3)内核输入/输出内核的输入输出函数指OEMloControl函数。当设备驱动程序或应用程序调用KenelloControl函数并传递一个IOCTL时,Windows CE内核会依次调用OEMIoControl函数,0EMIoControl函数允许设备驱动程序或应用程序与内核模式的OAL代码进行通信。 江苏科技大学本科毕业设计(论文) 11(4)中断处理Windows CE的中断实际上是由两部分ISR和IST组成的
38、。其中IST包含在驱动程序中,而ISR包含在OAL层中。所以要想支持一个硬件发生中断的话,首先必须从OAL层为其作好准备,一般分两步完成:一是创建中断标识符,二是创建并注册ISR。 (5)调试串口Windows CE设置了一个默认的串口作为调试信息的输出,用户通过调试命令打印调试信息的时候,WinCE系统就将此打印信息从默认的调试串口输出。注意Windows CE下默认的调试串口与串口驱动不是一个概念,即便是默认的调试串口能用的话,也不能说明它的驱动己经做好了,只能说它能发送Win CE的调试数据3.4.3 Windows CE 内核定制本课题是通过 Platform Builder5.0(简
39、称 PB)软件来定制 WINCE 操作系统的。在定制系统之前,首先应安装主板支持软件包(BSP) ,它是一个包括启动程序、OEM 适配层程序(OAL) 、标准开发板(SDB)和相关硬件设备的驱动程序的软件包。一般由开发板厂家提供,然后根据自己需要进行修改。用 PB 创建一个操作系统主要分成生成新平台、定制平台生成映像文件、下载平台3 部分。(1)生成新平台 启动 PB,在 File 中选择 NEW Platform,根据向导依次选择 BSP,选择平台的应用程序和媒体,选择平台的网络和通信,最后点击完成。这样一个新的平台就生成了。(2)定制平台生成映像文件 同样是在 PB 环境中定制平台。将前面
40、安装好的 BSP 中的驱动程序加到平台中,在本课题设计中,需要加入的驱动有:MFC,Standard SDK for Windows CE.NET,FAT 文件存储系统。在此过程中,可以将自己写好的驱动程序和应用程序,通过编写 Windows CE Componet(CEC)文件,生成新的 BSP,加入到要定制的平台中去。 完成定制之后,运行 Build 中的 Generate Platform Headers,通过后在运行 Build 中的Build Platform,编译通过后运行 Make Image,生成映像文件。此文件名称为 nk.bin,这就是我们最终需要的烧写文件。在此过程中,很
41、重要一步就是生成 SDK(软件开发工具包)。(3)下载平台 江苏科技大学本科毕业设计(论文) 12得到烧写文件 nk.bin 后,就要将它下载到我们的开发板中去。WIN CE 系统的烧写分为两部分文件烧写:Bootloader 和 nk.bin。3.53.5 ARMARM 技术介绍技术介绍ARM既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。ARM公司自1990年11月在英国剑桥成立以来,在32位RISC CPU开发领域不断取得突破。目前,ARM公司提供七个处理器核系列:ARM7、AEM9、ARM9E、ARM10E、ARM11、SecurCore以及C
42、ortex。ARM技术已遍及工业控制、消费类电子产品、通讯系统网络系统、无线系统等各类市场,并逐步渗入到我们生活的各个方面r。ARM公司一直以IP的身份向各大半导体制造出售只是产权,而自己不介入芯片的生产和销售,加上其设计的芯片具有低功耗、成本低、高性能、高效率等显著优点,因此获得众多半导体厂家和整机厂商的32位RISC嵌入式市场。世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,假如适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。3.5.1 ARM 处理器的体系结构处理器的体系结构(1)RISC体系结构RISC体系结构是针对传统的CISC固有的缺
43、点提出来的。经过大量的研究和分析,发现在CISC的指令集中大概有20%的指令被反复调用,使用量约占整个程序的80%;而有80%左右的指令则很少使用,其使用量约占整个程序的20%。RISC体系结构并非简单地减少指令,而是使其更加简单合理,提高运算速度。RISC结构优先选取使用频率较高的简单指令,避免复杂指令:将指令长度固定,指令格式和寻址方式种类减少;以逻辑控制为主,不用或少用微码控制;RISC指令集能使流水线处理器更有效地执行,还能使编译器使编译器生成更优化的代码。(2)ARM/Thumb双指令集ARM微处理器同时支持ARM指令集和Thumb指令集。ARM指令集32位的指令集,把一些常用的AR
44、M指令压缩成16位操作码就得到了Thumb指令集。在执行时,16位指令透明的实时解压缩成为全32位ARM指令且没有性能损失。虽然Thumb指令是16位长度,但其操作寄存器中全部为32位值,而且数据访问和取指令使用的也是全32位地址。 江苏科技大学本科毕业设计(论文) 13Thumb指令集为ARM指令集的功能子集,可节省30%-40%以上的存储空间,同时具备32位代码的所有优点。(3)寄存器结构ARM处理器共有37个处理器,被分为若干个组包括31个通用寄存器和6个状态寄存器,均为32位。.2 ARM920TARM920T 微处理器概述微处理器概述ARM920T内核以ARM9TDM
45、I为处理器核心,实现了MMU(内存管理单元)、AMBA(先进微控制器总线体系结构)总线以及分开的16KB指令Cache和16KB数据Cache。(1)内存管理单元(MMU) ARM920T处理器核的页面寻址方式基本上和ARM720T处理器核相同,支持64KB大页,4KB小页,1KB微小页等页面的变换和访问。由于ARM920T处理器采用了分离式的指令Cache和数据Cache,故也有相应的指令I-MMU和数据D-MMU。(2)Cache结构ARM920T处理器核采用分离式Cache结构,指令cache和数据Cache都为16KB,采用分段CAMRAM的64路相联映像方式,每个Cache分为8段,
46、每段64行,每行8个字。Cache的淘汰算法采用随机法和循环法。(3)写缓冲器 ARM920T处理器核的写缓冲器可以缓冲4个地址和16个数据字。 江苏科技大学本科毕业设计(论文) 14第四章第四章 系统硬件及系统硬件及 GPSGPS 模块设计模块设计4.14.1 总体硬件设计方案总体硬件设计方案整体电路框图如图4-1所示: 处理器 S3C2410 时钟电路电源SDRAMFLASHGPS 模块LCD 显示图 4-1 系统总体硬件图GPS导航定位系统的设计可分为S3C2410处理器和GPS模块电路,其中GPS模块将接收到的定位数据通过串口传送给处理器,完成GPS的导航定位功能。.1
47、 系统系统硬件的选择硬件的选择在本硬件平台上采用的处理器是三星公司的 S3C2410A,存储模块采用 FLASH,和SDRAM 提供系统所需的内存,其中 FLASH 采用的是 K9F1208UDM,SDRAM 采用的是三星公司的两片 K4S561632C-TC75 芯片。电源采用 3.3V 和 1.8V 供电,系统处理器芯片采用 1.8V 供电,存储模块采用 3.3V 供电。显示模块采用的是 PD064VT5,它是一种用非晶硅 TFT 作为开关器件的有源矩阵液晶显示器。.2 S3C2410S3C2410 处理器处理器ARM 处理器的选型需要综合考虑多方面的内容包括 ARM 处理
48、器内核版本、CPU工作频率、片内存储器容量、片内外围电路、成本以及技术支持等。针对所设计的 GPS定位系统、GPS 信号采集和信息处理显示等任务,我们选用三星公司的 S3C2410 处理器。 江苏科技大学本科毕业设计(论文) 15S3C2410处理器是一款基于ARM920T内核的1632位RISC嵌入式微处理器,主要是面向手持设备以及高性价比、低功耗的应用。为降低系统成本,S3C2410处理器内部集成了SDRAM内存控制器、NAND Flash控制器、LCD控制器、等多种接口。以下是S3C2410的一些基本特性:(1)RISC体系结构,支持32位ARM指令集和16位的Thumb指令集;(2)五
49、级整数流水线(包括预取、译码、执行、访存和写入),指令执行效率更高;(3)全性能的MMU,支持虚拟存储系统,可以稳定运行WinCE以及Linux操作系统;(4)内部高级控制总线(AMBA)体系结构;(5)支持从NAND FLASH存储器启动,带有4KB内部启动引导缓冲区;(6)它带有55个中断源(看门狗定时器,5个 定时器, , 9个UART,24个外部中断,4个DMA,2个RTC,2个ADC,1个I2C,2个SPI,2个USB,一个LCD和 一个电池管理);外部中断源的触发模式可为电平触发也可为边沿触发;对紧急中断请求支持FIQ(快速中断请求)(7)LCD控制器支持TFT,支持“640480
50、,320240,160160等多种屏幕尺寸;(8)三通道UART串口,可编程波特率,可基于DMA或中断方式工作,四通道PWM定时器,I/O口,8通道10位ADC和触摸屏接口,USB主设备,USB从设备等。(9)内核工作电压:1.8V最高200MHZ,2.0V最高266MHZ,33V存储器工作电压33V外围I/O工作电压;4.24.2 系统硬件电路设计系统硬件电路设计在系统的框架图中,SDRAM K9F1208UDM和SDRAM K4S561632C都使用3.3V电源供电,FLASH模块的WE ,ALE ,CLE ,CE ,RE ,RnB脚分别与S3C2410A的FLASH控制器相连,8个I/O
51、口分别与系统数据总线DATA31:0相连。SDRAM模块的nscs ,nsras ,nscas ,nWE ,LDQM , UDQM,SCKE ,SCLK脚与S3C2410的存储控制器相连,A0-A12,BA0,BA1分别与系统的数据总线的ADDR26:0相连。LCD模块的HSYNC,VSYNC,DENB,CLK及数据位经过电平转换j分别与LCD控制器相连,GPS模块引脚与MAX232相连后经过电平转换与系统的串口相连。如图4-2所示: 江苏科技大学本科毕业设计(论文) 16图4-2 系统硬件平台接线图 江苏科技大学本科毕业设计(论文) .1 电源电路电源电路电源电路是整个系
52、统工作的基础,设计的好坏直接影响系统的稳定性。设计电源应考虑的因素有:输出的电压、电流、功率;输入的电压、电流;安全因素;输出纹波:电池兼容和电磁干扰;体积限制;功率限制等。为了简化系统电源电路的设计,要求整个系统的输入电压为高质量的5V直流稳压电源,输入电压经转换器可完成5V到3.3V和1.8V的电压转换,如图4-3,4-4所示: D1201R12011KOUTINGC1203100uFC1202100nFC1201100uFAME1117-3.3VVDD5VU1201VDD3.3V5V图4-3 3.3V电源电路D201LEDOUTADJINENGNDC21210uFC202470pFC20
53、110nFVDD3.3U201MIC5207BM5VDD1.8R20447KR203100KR2061K图4-4 1.8V电源电路.2 串口电路串口电路串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。常 江苏科技大学本科毕业设计(论文) 18用的串口是 RS-232-C 接口,它是在 1970 年由美国电子工业协会(EIA)联合贝尔系统,调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。RS-232-C 采用的标准接口是 9 芯或 26 芯的 D 型插头,常用 9 芯 D 型插头。要完成最基本的串行通信功能,实际上只需要 RXD,TXD,和
54、GND 就可以,但由于 RS-232-C 标准所定义的高低电平逻辑与 S3C2410A 的异步串行接口不同,两者之间通信必须进行电平转换,因此采用的器件是 MAX232CPE,如图 4-5 所示:T1OUTRIN1T2OUTRXD0RIN2TXD1C2+C2-V-T1INROUT1T2INTXD0ROUT2DXD2C1+C1-V+C11uFC21uFVDD3.3VC31uFC51uFC41uFVDDVSSMAX232CPE1234567891110D Connector 11图 4-5 电平转换原理图.3 FlashFlash 电路电路FLASH是一种非易失,可在系统内用电擦写
55、,掉电后信息不丢失的存储器。它具有低功耗、大容量、擦写速度快、可整片或分扇区在系统编程、擦除等特点,并且可由内部嵌入的算法完成对芯片的操作,在各种嵌入式系统中得到了广泛的应用。FLASH在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。 江苏科技大学本科毕业设计(论文) 19由于微控制器需要存储在非易失的存储介质中以确保掉电后程序也不丢失,目前用的比较多的是FLASH,FLASH又有NOR和NAND FLASHH两种,考虑到大容量的NOR FLASH成本较高,S3C2410支持NAND FLASH启动方式,因此选择NAND FLASH用于存放程序代码、常量表以及一些
56、在系统掉电后需要保存的用户数据等。在此系统中我们使用K9F1208UDM作为NAND FLASH存储器。K9F1208UDM的存储容量为64MB,数据总线宽度为8位,工作电压为2.7-3.6V,采用TSOP-48封装;仅需要3.3V电压即可完成在系统的编程与擦除操作,S3C2410与NAND FLASH连接关系如图4-6所示:I/O5DATA5I/O0DATA0I/O2DATA2I/O3DATA3I/O1DATA1VSSI/04DATA4I/O6DATA6ALEALEWPWEnWECLECLEVCCCEnCEREnRER/nBR/nBI/O7DATA7VDD 3.3VK9F1208UDMR11
57、0K图4-6 FLASH存储电路.4 SDRAMSDRAM 电路电路SDRAM具有容量大、存取速度快、低成本的特点,因而广泛应用到微机处理系统中。SDRAM主要用来存放执行代码和变量,是系统启动之后主要进行存取操作的存储 江苏科技大学本科毕业设计(论文) 20器。由于SDRAM需要定时刷新以保住存储的数据,因而要求微处理器具有刷新控制逻辑。S3C2410及其他一些ARM芯片在片内具有独立的SDRAM刷新控制逻辑,可以方便的与SDRAM接口。目前常用的SDRAM为8位16位数据宽度。本设计中采用两片三星K4S561632C-TC75芯片构建32位的SDRAM存储系统。每片K4S5
58、61632C的存储容量为32M,工作电压为3.3V。兼容LVTTL接口,16位数据宽度。 K4S561632C和S3C2410的连线原理如图4-7所示DQ0DATA0DQ1DATA1DQ2DATA2DQ3DATA3SDRAM K4S561632C-TC75(32M)DQ4DATA4DQ5DATA5DQ6DATA6DQ7DATA7DQ8DATA8DQ9DATA9DQ10DATA10DQ11DATA11DQ12DATA12DQ13DATA13DQ14DATA14DQ15DATA15nscsnscs0nsrasnsrasnscasnscasnWEnWEVDD0VDD1VDD2VDDQ0VDDQ1VD
59、DQ3VDDQ3A0ADDR2A2ADDR4A1ADDR3A3ADDR5A4ADDR6A7ADDR9A5ADDR7A6ADDR8A8ADDR10A12ADDR14A11ADDR13A9ADDR11A10ADDR12LDQMnWBE0UDQMnWBE1SCKESCKESCLKSCLK0VSS0VSS1VSS2VSSQ0VSSQ1VSSQ2VSSQ3BA0ADDR24BA1ADDR25VDD 3.3VDQ0DATA0DQ1DATA1DQ2DATA2DQ3DATA3SDRAM K4S561632C-TC75(32M)DQ4DATA4DQ5DATA5DQ6DATA6DQ7DATA7DQ8DATA8DQ
60、9DATA9DQ10DATA10DQ11DATA11DQ12DATA12DQ13DATA13DQ14DATA14DQ15DATA15nscsnscs0nsrasnsrasnscasnscasnWEnWEVDD0VDD1VDD2VDDQ0VDDQ1VDDQ3VDDQ3A0ADDR2A2ADDR4A1ADDR3A3ADDR5A4ADDR6A7ADDR9A5ADDR7A6ADDR8A8ADDR10A12ADDR14A11ADDR13A9ADDR11A10ADDR12LDQMnWBE2UDQMnWBE3SCKESCKESCLKSCLK1VSS0VSS1VSS2VSSQ0VSSQ1VSSQ2VSSQ3B
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 集资房认购权转让合同范本
- 企业经营承包合同协议范本
- 果园承包合同模板大全
- 农村土地买卖合同范本
- 学校租用轿车合同协议
- 购房担保借款协议
- 培训机构合作协议:合同样本
- 农业住宅转让协议书参考
- 工伤赔偿协议书模板
- 2024合作共赢协议格式
- 非传统水源利用率计算书
- 废弃电器电子产品拆解处理综合管理系统使用手册
- 颈椎病护理查房 (3)PPT
- 02《文字下乡》课件13张-统编版高中语文必修上册
- 某集团公司战略地图
- 播音主持艺术毕业晚会策划
- 塑胶原料烘料温度对照表
- 旅游管理信息系统教材课件汇总完整版ppt全套课件最全教学教程整本书电子教案全书教案合集最新课件汇编
- 绿电制绿氢及其综合利用技术PPT
- JJG646-2006移液器检定规程-(高清现行)
- 司法所安置帮教工作流程图
评论
0/150
提交评论