




已阅读5页,还剩77页未读, 继续免费阅读
(测试计量技术及仪器专业论文)基于arm系统的嵌入式tcpip底层驱动及应用程序接口实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上海大学硕士学位论立 摘要 随着微电子技术、计算机技术和网络技术的高度发展及其在测控系统中的 应用,新的设计理念、实现方式不断出现,并突破了传统的测控模式。新一代 测控系统的工作模式更为灵活,结构划分更为合理、任务分工更为科学,具有 广阔的应用前景。 本课题基于上海市科委项目“基于混合传输方式的测控系统研究”,对在测 控系统中实现t c p i p 通信进行了讨论和研究。本文介绍了t c p i p 协议的体系 结构和通信交互过程,在此基础上提出了一个嵌入式t c p i p 协议的具体实现模 型。本课题的硬件设计基于a r m 微处理器,以a r m 7 t d m i 为核心,软件平台 选择了n u c l e u sp l u s 嵌入式实时多任务操作系统,在此基础上易于开发功能强 大、结构复杂的大型应用软件。 本论文后半部分针对嵌入式系统的特点,对传统通用的t c p i p 协议在不违 背协议标准的前提下加以改进和裁减,结合具体的硬件环境和软件实现阐述了 嵌入式t c p i p 协议的设计思想和实现方法。详细介绍了t c p i p 通信模块的硬 件构成、功能和以太网接口芯片的驱动方式,完成了以太网硬件电路和驱动程 序的设计。分析和阐述了u d p 处理程序的软件实现,及其关键的编程细节等。 本课题还实现了s o c k e t 编程接口,封装了协议栈大部分的底层操作,给顶层 的应用程序提供了一个标准、易用的应用程序接口。最后对整个工作进行了归 纳和总结,并提出了目前实现存在的问题和可能的改进方法,并对未来的发展 方向进行了展望。 经过实际测试,该系统克服了传统测控系统自动化程度低、处理能力有限、 通信方式落后的特点,在信息处理、网络通信等性能上有了显著提高。 关键词:嵌入式系统,a r m ,n u c l e u sp l u s ,t c p i p ,s o c k e t v 上海人学硕士学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to ft h et e c h n o l o g i e so fm i c r o e l e c t r o n i c ,c o m p u t e r , t h e n e t w o r k ,a n dt h ea p p l i c a t i o no ft h e mi nm c s ( m e a s u r ea n dc o n t r o ls y s t e m ) ,t h en e w i d e a so fd e s i g na n dt h en e wm o d e lo fr e a l i z a t i o na p p e a rn o w , w h i c hb r e a kt h r o u l g h t h ec o n v e n t i o n a lp a u e m s t h en e wg e n e r a t i o no f m c sh a sf l e x i b l eo p e r a t i n gp a t t e r n , r e a s o n a b l es t r u c t u r e ,s c i e n t i f i ct a s k sa s s i g n m e n t ,a n ds h o was p l e n d i df u t u r e t h i sp a p e rb a s e do nt h ep r o j e c t “t h er e s e a r c ho fm c sb a s e do nm i x e d t r a n s m i s s i o n ”o fs h a n g h a is c i e n c ec o m m i t t e e w eh a v eas t u d ya n dd i s c u s s i o no n h o wt o r e a l i z i n gt c p i pc o m m u n i c a t i o ni nm c s t h e no nt h eb a s e so fa n i n t r o d u c t i o na b o u tt h es y s t e m a t i c a lc o n s t r u c t i o na n dt h ep r o c e s so fc o m m u n i c a t i v e e x c h a n g eo f t c p i p , w ep r o p o s eac o n c r e t er e a l i s t i cm o d e lo ft h ee m b e d d e dt c p i p t h ed e s i g no f t h eh a r d w a r ei nt h i sp r o j e c ti sb a s e du p o na r mm i c r o p r o c e s s o r , m a k e a r m 7 t d m ia si t sc o r e a sf a ra st h es o f t w a r ep l a t f o r mi sc o n c e r n e d ,n u c l e u s p l u se m b e d d e do p e r a t i n gs y s t e mi ss e l e c t e d ,f o ro nt h eb a s eo fw h i c h ,am o r e p o w e r f u la n dm o r ec o m p l i c a t e dl a r g e - s c a l ea p p l y i n gs o f t w a r ew o u l db ed e v e l o p e d a i m e da tt h et r a i t so fe m b e d d e ds y s t e m ,t h el a t e rh a l fp a r to ft h i s p a p e r d i s c u s s e st h ei m p r o v e m e n ta n dr e d u c eo nt h et r a d i t i o n a lc o m m o nt c p i pw i t ht h e p r e c o n d i t i o no fo b e y i n gi t sc r i t e r i o n t h ep r o j e c ti d e a sa n dw a y st or e a l i z et c p i p u n d e rac o n c r e t eh a r d w a r ea n ds o f t w a r ec o n d i t i o na r ee x p a t i a t e dt o o t h eh a r d w a r e c o n s t r u c t i o na n df u n c t i o no f t c p i pm o d u l e ,a sw e l la st h ed r i v i n gm o d eo f t h en i c a r em t r o d u c e di nd e t a i l b o t ht h ed e s i g no fd r i v e ra n dr e l a t i n ge l e c t r o c i r c u i tc h a r t a r ep r e s e n t e di nh e r et h i sp r o j e c ta l s om a k e sas t u d yo nt h es o f t w a r er e a l i z a t i o no f u d p p r o c e s s i n gp r o g r a ma n dt h ec r i t i c a lp r o g r a m m i n gd e t a i l s a n o t h e ra c h i e v e m e n t i nt h i s p r o j e c tl a y s i nt h ec a r r y i n go u to fs o c k e ta p i ,t h ee n v e l o p eo fm o s t u n d e r - s t r a t u mo p e r a t i o n so ft c p 口, w h i c ho f f e r sas t a n d a r da n de a s ya p if o rt h e a p p l i c a t i o n so nt h et o p t h el a s tc h a p t e ri s as u m m i n g - u po ft h ea b o v es t u d i e s ; m o r e o v e r , s o m ep r o b l e m ss t i l le x i s t e di nt h ef i e l d ,a sw e l la st h ed i r e c t i o no ff u r t h e r l 海大学颐士学位论文 d e v e l o p m e n to f t h es u b j e c ti sa l s op o i n t e di nt h i sc h a p t e r a c c o r d i n gt oa c t u a lt e s t i n g ,t h i ss y s t e mo v e r c o m e st h ed e f e c t so ft r a d i t i o n a l m c ss u c ha sl a c ko f p r o c e s s i n ga b i l i t y , e f f e c t i v ec o m m u n i c a t i o na n da u t o m a t i z a t i o n t h ep e r f o r m a n c eo fn e wm c si si m p r o v e di ni n f o r m a t i o np r o c e s s i n ga n dn e t w o r k c o m m u n i c a t i o n k e y w o r d s :e m b e d d e ds y s t e m ,a r m ,n u c l e u sp l u s ,t c p i p , s o c k e t v i 上海大学硕上学位论文 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特别加以标注和致谢的地方外,论文中不包含其他人已发 表或撰写过的研究成果。参与同一工作的其他同志对本研究所做的 任何贡献均已在论文中作了明确的说明并表示了谢意。 签名:垄j 1 1日期:! :! :垃? 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即: 学校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学 校可以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 签名:壅z 氢导师签名: 1 1 日期:丝q 2 , 上海大学硕士学位论文 1 1 课题来源 第一章绪论 本课题来源于上海市科委项目:基于混合传输方式的测控系统研究。该测 控系统具备t c p i p 、u s b 以及无线传输模式。本论文要完成的是其中的t c p i p 模块硬件、以太网驱动程序、u d p 协议和s o c k e t 的设计与实现。 1 2 嵌入式系统及其发展现状 1 2 1 嵌入式系统概况 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁,系统 对功能、可靠性、成本、体积、功耗要求非常严格的专用计算机系统。嵌入 式系统不同于一般的系统,它具有其它应用所不具备的一些特性: ( 1 ) 体积小在智能化设备、仪器仪表、信息家电等应用场合,出于对 产品的体积、成本等因素的考虑,一般要求将计算机控制部分安装在系统内部, 并且要求所占用的空问尽可能的小。 ( 2 ) 良好的性能价格比嵌入式系统要求开发周期短、性能优越,良好 的性能价格比是在市场上取得优势的关键,这也是嵌入式系统的设计目标之一。 ( 3 ) 存储容量小一一嵌入式系统中一般没有硬盘等设备,而以r o m 、 f l a s hm e m o r y 作为存储介质,由于f l a s hm e m o r y 的价格一般比较昂贵, 并且嵌入式应用要求其体积尽可能小。 ( 4 ) 实时性比较强嵌入式系统一般作为应用的关键部分,时i 、日j 特性要 求非常严格。在一些应用系统中,超过了一定的时限,即使得出了所需的结果, 但效果和没有得出结果是一样的,对系统没有作用甚至是有害的。 嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用 软件等组成,它是可独立工作的“器件”。1 。 上海大学硕士学位论文 12 2 嵌入式处理器 嵌入式系统的核心是嵌入式处理器。嵌入式处理器一般具备以下特点: ( 1 ) 对实时和多任务有很强的支持能力,能完成多任务并且有较短的中断 响应时间。 ( 2 ) 很强的存储区保护功能,这是由于嵌入式系统的软件结构己模块化, 而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护 功能,同时也有利于软件诊断。 ( 3 ) 可扩展的处理器结构,能迅速地扩展出满足应用的高性能嵌入式微处 理器。 ( 4 ) 嵌入式处理器的功耗必须很低,尤其是用于便携式的无线及移动的计 算和通信设备中靠电池供电的嵌入式系统更是如此,功耗只能为m w 甚至肚w 级。 据不完全统计,目前全世界嵌入式处理器的品种总量已经超过1 0 0 0 种,流 行的体系结构有3 0 多个系列。其中8 0 5 1 体系占多半,生产这种单片机的半导 体厂家有2 0 多个,共3 5 0 多种衍生产品,仅p h i l i p s 就有近1 0 0 种。现在几乎 每个半导体制造商都生产嵌入式处理器,越来越多的公司有自己的处理器设计 部门。 根据现状,嵌入式处理器可分为下面几类: ( 1 ) 嵌入式微处理器( e m b e d d e dm i c r o p r o c e s s o ru n i t ,e m p u ) ,目前主要有 a m l 8 6 8 8 、3 8 6 e x 、s c - 4 0 0 、p o w e r p c 、6 8 0 0 0 、m i p s 、a r m 系列等。 ( 2 ) 嵌入式微控制器( m i c r o c o n t r o l l e ru n i t ,m c u ) ,嵌入式微控制器又称 单片机,比较有代表性的通用系列包括8 0 5 1 、p 5 1 x a 、m c s 一2 5 1 、 m c s 9 6 1 9 6 2 9 6 、c 1 6 6 1 6 7 、6 8 3 0 0 等,目前m c u 约占嵌入式系统份额的7 0 。 ( 3 ) 嵌入式d s p 处理器( e m b e d d e dd i g i t a ls i g n a lp r o c e s s o r e d s p ) ,嵌入 式d s p 处理器比较有代表性的产品是t i 的t m s 3 2 0 系列和m o t o r o l a 的 d s p 5 6 0 0 0 系列。 ( 4 ) 嵌入式片上系统( s y s t e mo nc h i p ,s o c ) ,s o c 可分为通用和专用两 类:通用s o c 如l n f l n e o n ( s i e m e n s ) 的t f i c o r e 、m o t o r o l a 的m c o r e ,e c h e l o n 一卜海大学碗士学位论立 和m o t o r o l a 联合研制的n e u r o n 芯片等;专用s o c 一般专用于某个或某类系统 中,如p h i l i p s 的s m a r t x a 。 1 2 3 嵌入式操作系统及应用现状 嵌入式操作系统作为嵌入式系统的核心,其应用也越来越广泛,尤其在手 持设备、信息家电领域更加突出”1 。但嵌入式系统以及嵌入式软件设计技术仍 处于起步阶段,未能形成一套完整、有效、通用的开发方法和规范。嵌入式系 统的实时多任务操作系统( r t o s ) 日趋成熟,并且己成为嵌入式系统的热点。 嵌入式操作系统通常包括与硬件相关的底层驱动程序、系统内核、设备驱动接 口、通信协议、图形界面、标准化浏览器等6 1 。据统计仅用于信息电器的嵌入 式操作系统就有4 0 多种。 目前比较成熟的商品化嵌入式操作系统主要有v x w o r k s 、n u c l e u sp l u s 、 p s o s 、w i n d o w sc e 、e c o s ,q n x ,p a l m o s 、e p o c ,u c l i n u x ,c m x 、h o p e n 、 l y n x o s 等等,其中有一些是公开源码的,便于移植。嵌入式应用系统的特点, 决定了这些嵌入式操作系统具有如下应用特点”“: 体积小,高性能,良好的容错性和可靠性 易于隔离系统中出现的各种错误 系统结构更加灵活 分布式计算和并行计算的良好支持 良好的可扩展性和可剪裁性 操作系统的结构更加模块化 支持多任务的嵌入式t c p d 网络组件,适用于内存要求较小、可靠 性要求较高的网络应用。 1 3 嵌入式t c p i p 协议 嵌入式系统是嵌入于宿主设备,以辅助宿主设备高质量完成其功能为目的 的小巧而廉价的计算机系统,而t c p 口( t r a n s m i s s i o nc o n t r o lp r o t o c o l i n t e m e t p r o t o c 0 1 ) 协议是7 0 年代中期美国国防部为其a r p a n e t 广域网开发的网络体 上海大学硕士学位论文 系结构和协议标准,它代表了一个协议栈,以它为基础建的i n t e m e t 是目前国际 上规模最大的计算机网间网。传统的t c p i p 协议把大量精力花在保证数据传送 的可靠性以及数据流量的控制上。在实时性要求比较高的嵌入式领域,传统的 t c p i p 并不能满足其实时性的要求,另外传统t c p i p 的实现过于复杂,需占 用大量系统资源,而嵌入式应用领域的系统资源往往都很有限。 为适应嵌入式分布处理和应用上网的需求,面向2 l 世纪的嵌入式系统要求 配备标准的一种或多种网络通信接口。针对外部联网要求,嵌入式设备必须配 e t h e m e t 网口,数据链路层选用以太网协议,上层网络协议栈的选择要用t c p i p 协议,通过t c p i p 协议能够使内部网络或网络设备与整个i n t e r n e t 联网,在全 世界范围内进行通信与信息交流。例如在某一区域安装了很多监控产品,但数 据中心不在该区域,而是设在其它地方,这时就需要通过t c p f l p 协议来传输控 制信息、状态信息以及数据信息。另外,在嵌入式设备中实现t c p 1 p 协议可以 统一平台,使不同厂家生产的产品兼容。譬如智能小区可能由多家供应商进行 建设,其中一些厂商做平台或者软件,另外一些厂商做硬件,这就需要大家都 遵守t c p i p 协议,才可以使各自的远程抄表系统、智能防盗产品等嵌入式设备 更好的兼容。 嵌入式系统的主要特点是体积小、资源有限,特别是过去大量存在的8 1 6 位m c u 嵌入式设备,其运算速度和内存大小均难以支持传统的t c p i p 协议, 或根本不可能。因此需要不同程度的对传统的t c p i p 进行简化和优化,尽可能 地做到代码精简、存储开销小。这种用于嵌入式系统联网的t c p i p 协议就称为 嵌入式t c p i p ,其主要特点是实时性、简单性和灵活性。灵活性是指嵌入式 t c p i p 结构十分灵活,能适应各种应用需要,并极易升级。 1 4 课题研究的目的和意义 随着i n t e r n e t 网络软、硬件的快速发展,互联网用户正以指数级增长。而 各种家电设备、p d a 、仪器仪表、工业生产中数据的采集与控制等设备也e 在 逐渐走向网络化,以便共享互联网络中庞大的资源。t c p i p 协议已经成为计算 机网络互连事实上的标准,每时每刻保证了数据的准确传输。在嵌入式系统中, l 海大学硕士学位论文 可以利用t c p 口协议中的a r p 、i p 、i c m p 、u d p 和t c p ,成功的实现双机的 网络互连,既提高了数据传输的速度,又保证了数据传输的正确性,同时也扩 展了数据传输的有效半径。因此,如何在价格低廉、资源有限的嵌入式系统中 实现网络通信功能,已经成为嵌入式系统开发人员面临的重要课题。 1 5 本论文的主要研究内容 本论文的主要内容就是对网络协议进行探讨,并进而实现它,以通过互联 网实现数据的可靠传输。要实现此功能,需要在一定的物理媒介基础上完成网 络协议。首先实现以太网的数据收发,这部分主要在a r m 硬件开发平台上由 硬件和软件共同实现;然后在其基础上,完成t c p i p 协议体系中上层协议的功 能,这部分主要由软件实现,以实现数据在i n t e r n e t 上的传输。整个t c p i p 协 议体系有很多协议构成,分别完成不同的功能,我们只选择用于完成网络传输 的一些必要的协议,其他协议暂不涉及。 第二章阐述本嵌入式系统的丌发平台,对a r m 的一些基本概念以及本系 统所采用的a r m 微处理器l p c 2 2 9 2 进行介绍,并简要介绍了本课题所采用的 嵌入式操作系统n u c l e u sp l u s 。 本文第三章将会讨论系统的总体设计问题,即由硬件和软件共同搭建的系 统及其所要实现的功能。根据对t c p i p 协议及其工作机理的阐述,从而导出达 到系统应用目的所需完成的工作,由此拿出系统实现方案。 第四章介绍具体的硬件电路实现,并分析了关键元器件。 第五章是本文的重点,即讨论t c p i p 的软件实现。包括t c p i p 协议及 s o c k e t 的具体实现过程。当然,硬件是软件实现的基础。 本文第六章提出并实施了系统通信及数据传输的测试方案,对系统所实现 的功能进行了测试。 第七章是结论与展望。 上海大学硕士学位论文 第二章嵌入式系统开发平台 2 1a r m 简介 a r m 公司自1 9 9 0 年正式成立以来,在3 2 位r i s c ( r e d u c e di n s t r u c t i o ns e t c o m p u t e r ) c p u 开发领域不断取得突破,其结构己经从v 3 发展到v 6 。由于 a r m 公司自成立以来,一直以i p ( i n t e l l i g e n c e p a t e n t ) 提供者的身份向各大半 导体制造商出售知识产权,而自己从不介入芯片的生产销售,加上其设计的芯 核具有功耗低,成本低等显著优点,因此获得了众多半导体厂家和整机厂商的 大力支持,在3 2 位嵌入式应用领域获得了巨大成功,目前己经占有7 0 以上 的3 2 位嵌入式产品市场。在低功耗、低成本的嵌入式应用领域确立了市场领导 地位。现在设计、生产a r m 芯片的国际大公司已经超过5 0 家。 a r m 处理器目前包括下面几个系列的产品:a r m 7 系列、a r m 9 系列、 a r m 9 e 系列、a r m l 0 系列、s e c u r c o r e 系列、i n t e l 的x s c a l e 和s t r o n g a r m 。 此外,a r m 芯片还获得了许多实时操作系统( r e a lt i m eo p e r a t i n gs y s t e m ) 供 应商的支持,比较知名的有: w i n d o w sc e 、l i n u x 、v x w o r k s ,n u c l e u s 等。 在a r m 内核中有四个功能模块可供生产厂商根据用户的不同要求来配置 生产。这四个模块分别用t 、d 、m 和i 来表示。 t :表示t h u m b ,该内核可从1 6 位指令集扩充到3 2 位a r m 指令集。 d :表示d e b u g ,该内核中放置了用于调试的结构,通常它为一个边界扫 描链j t a g ,可使c p u 进入调试模式,从而可方便地进行断点设置、单 步调试。 m :表示m u l t i p l i e r ,是8 位乘法器。 i :表示e m b e d d e di c e ,用于实现断点观测及变量观测的逻辑电路部分, 其中的t a p 控制器可接入到边界扫描链。 a r m 7 采用a r m v 4 t ( 冯诺依曼) 结构,分为三级流水线,空间统一的 指令与数据c a c h e ,平均功耗为0 6 m w m h z ,时钟速度为6 6 m h z ,每条指令 平均执行1 9 个时钟周期。其中的a r m 7 1 0 ,a r m 7 2 0 和a r m 7 4 0 为内带c a c h e 上海大学硕十学位论文 的a r m 核。a r m 7 t d m l ( t h t t m b ) :这是公司授权用户最多的一项产品,a r m 7 指令集同t h u m b 扩展组合在一起,以减少内存容量和系统成本。同时,它还利 用嵌入式i c e 调试技术来简化系统设计,并用一个d s p 增强扩展来改进性能。 本课题所选用的l p c 2 2 9 2 嵌入式微处理器就是以a r m 7 t d m i 为核,t l , 的。 a r m 7 系列微处理器为低功耗的3 2 位r i s c 处理器,最适合用于对价位和功耗 要求较高的消费类应用。a r m 7 微处理器系列具有如下特点“: 具有嵌入式i c e r t 逻辑,调试开发方便。 极低的功耗,适合对功耗要求较高的应用,如便携式产品。 能够提供o 9 m i p s m h z 的三级流水线结构。 代码密度高并兼容1 6 位的t h u m b 指令集。 对操作系统的支持广泛,包括w i n d o w sc e 、l i n u x 、p a l mo s 等。 指令系统与a r m 9 系列、a r m 9 e 系列和a r m1 0 系列兼容,便于用户 产品的升级换代。 主频最高可达1 3 0 m i p s ,高速的运算处理能力能胜任绝大多数的复杂 应用。 2 2a r m 微处理器结构 2 2 1a r m 微处理器的处理器模式 a r m 微处理器共有7 种运行模式,如表21 所示 表21a r m 微处理器的运行模式 处理器模式描述 用户模式( u s r )用户应用程序运行模式 快速中断模式( f i q ) 用于紧急事件处理以及高速数据传输 外部中断模式( i r q ) 用于通常的中断处理 特权模式( s u p )供操作系统使用的一种保护模式 数据访问终止( a b t )用于虚拟存储和存储保护 未定义指令终止模式( u n d )用于支持通过软件仿真硬件的协处理器 系统模式( s y s ) 用于运行特权级的操作系统任务 上海大学硕士学位论文 除了用户模式之外的其它6 种处理器模式称为特权模式( p r i v i l e g e d m o d e s ) 。在特权模式下,程序可访问所有的系统资源,也可任意地进行处理器 模式的切换。 a r m 处理器之所以要有如此多的模式,是和操作系统的实现分不开的,在 用户模式下( 一般为应用程序执行模式) 操作系统为了安全起见,一般不允许 用户应用程序访问系统内核空间代码。但是,应用程序的不同任务之间的调度 必然要用到系统的内核服务,这就产生了一个矛盾,可利用硬件的定时器产生 定时中断,使处理器进入外部中断模式,来实现对内核服务的调用;或者执行 自定义的指令,产生未定义指令异常,使处理器进入未定义指令终止模式,也 可调用内核服务。当处理器同外部事件打交道时,需由中断模式来处理。这些 事件视重要程度不同,可以有不同的优先级。基于这种考虑,a r m 增加了一种 特殊的处理器模式,就是快速中断模式( f i q ) ,如当供电电源不稳定或者时间 要求十分苛刻的事件发生时,在很短的时间里,期望处理器做尽可能多的事情, 利用f i q 来处理这些时间要求苛刻的事件是一种很明智的选择。特权模式则是 操作系统运行的一种模式。如果用户的应用程序访问了操作系统内核所占据的 区域或者内核保护的空间,则会产生数据访问终止异常。系统模式一般是系统 特权级的任务运行的模式。 2 2 2a r m 微处理器的存储器格式 a r m 体系结构将存储器看作是从零地址开始的字节的线性组合。从零字节 到三字节放置第一个存储的字数据,从四字节到七字节放置第二个存储的字数 据,依次排列。作为3 2 位的微处理器,a r m 体系结构所支持的最大寻址空问 为4 g b ( 2 3 2 字节) 。a r m 体系结构可以用两种方法存储字数据,分别为大端格 式和小端格式,具体说明如下: 大端格式:在这种格式下,字数据的高字节存储在低地址中,而字数据的 低字节则存放在高地址中。 小端格式:与大端存储格式相反,在小端存储格式中,低地址中存放的是 字数据的低字节,高地址存放的是字数据的高字节“”。 上海人学硕士学位论文 2 23a r m 微处理器的指令长度及数据类型 a r m 微处理器的指令长度可以是3 2 位( 在a r m 状态下) ,也可以为1 6 位( 在t h u m b 状态下) 。a r m 微处理器中支持字节( 8 位) 、半字( 1 6 位) 、字 ( 3 2 位) 三种数据类型。其中,字需要4 字节对齐( 地址的低两位为0 ) 、半字 需要2 字节对齐( 地址的最低位为o ) 。 2 3l p c 2 2 9 2 概述 2 3 1l p c 2 2 9 2 简介 l p c 2 2 9 2 是基于一个支持实时仿真和跟踪的1 6 3 2 位a r m 7 t d m i 的c p u ,并 带有2 5 6 k 字节( 1 【b ) 嵌入的高速f l a s h 存储器。1 2 8 位宽度的存储器接口和独特的加 速结构使3 2 位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可 使用1 6 位t h u m b 模式将代码规模降低超过3 0 ,而性能的损失却很小。 由于l p c 2 2 9 2 的1 4 4 脚封装、极低的功耗、多个3 2 位定时器、8 路1 0 位a d c 、 2 路c a n 、p w m 通道以及多达9 个外部中断使它们特别适用于汽车、工业控制应 用以及医疗系统和容错维护总线。l p c 2 2 9 2 包含7 6 ( 使用了外部存储器) l 12 ( 单片) 个g p i o 口。由于内置了宽范围的串行通信接口,它们也非常适合于通 信网关、协议转换器以及其它各种类型的应用。 2 3 2l p c 2 2 9 2 特。陛 1 6 3 2 位a r m 7 t d m i s 微处理器,l q f p l 4 4 封装。 1 6 k b 片内静态r a m 和2 5 6 k b 片内f l a s h 程序存储器,1 2 8 位宽接口) j n 速器 可实现高达6 0 m h z 的工作频率。 通过片b o o t 装载程序实现在系统编程( i s p ) 和在应用编程( i a p ) 。 5 1 2 9 a 节行编程时间为1 m s 。单扇区或整片擦除时间为4 0 0 m s 。 e m b e d d e di c e r t 和嵌入式跟踪接口使用片内r e a l m o n i t o r 软件对任务进 行实时调试并支持对执行代码进行无干扰的高速实时跟踪。 上海大学硕士学位论文 2 个互连的c a n 接口,带有先进的验收滤波器。多个串行接口,包括2 个 1 6 c 5 5 0 3 2 业标准u a r t 、高速i 接口( 4 0 0k b i t s ) 和2 个s p i 接口。 8 路1 0 位a d 转换器,转换时间低至2 4 4 p s 。 2 个3 2 位定时器( 带4 路捕获和4 路比较通道) 、p w m 单元( 6 路输出) 、 实时时钟和看门狗。 向量中断控制器,可配置优先级和向量地址。 通过外部存储器接口可将存储器配置成4 组,每组的容量高达1 6 m b ,数 据宽度为8 1 6 3 2 位。 多达1 1 2 个通用i o k i ( 可承受5 v 电压) ,9 个边沿或电平触发的外部中 断引脚。 通过片内p l l 可实现最大为6 0 m h z 的c p u 操作频率。 片内晶振频率范围:l 3 0 m h z 2 个低功耗模式:空闲和掉电 通过外部中断将处理器从掉电模式中唤醒 可通过个别使能禁止外部功能来优化功耗。 双电源 - - c p u 操作电压范围:1 6 5 1 9 5v ( 1 8v 士o 1 5v ) 一加i 操作电压范围:3 0 3 6v ( 3 3v 士1 0 ) ,可承受5 v 电压。 基于以上特点,本课题选用l p c 2 2 9 2 作为主处理器。 2 4 嵌入式操作系统n u c l e u sp l u s 2 4 1 嵌入式操作系统概述 以往嵌入式应用程序所控制的外围设备和执行的任务不多,用一个主循环 加上几个顺序调用的子程序模块即可满足要求。随着应用的复杂化,一个系统 可能要同时控制和监视多个外设,要求系统具有实时响应、实时处理的能力, 能控制多个任务并保证任务间通信顺畅。如果仍采用原来的程序设计方法会存 在三个问题:一是中断可能得不到及时响应,处理时间过长,这对于一些控制 0 l 海大学硕十学位论文 场合是不允许的;二是系统任务多,要考虑的各种可能也多,各种资源如果调 度不当,就会发生死锁,降低软件可靠性,程序编写工作量与任务数目成指数 增加;三是硬件平台改变,程序几乎不再适合于新的平台,程序员基本从零丌 始编写应用程序,增加了大量的反复性劳动。 基于上述原因,操作系统的概念应运而生。操作系统是最基本的系统软件, 是嵌入式系统的控制核心,它掌控系统的所有资源并提供应用程序开发的基础, 它的主要功能之一就是将资源控制的复杂化隐藏起来,有效的组织多个任务的 运行,并为程序员的工作提供更为方便的一套指令和良好的工作环境,达到使 用方便、资源分配合理、安全可靠的目的。 目前嵌入式应用领域多采用实时多任务操作系统( r e a lt i m eo p e r a t i n g s y s t e m ) 。实时,是指物理进程的真实时间,实时操作系统是指具有实时性,能 支持实时控制系统工作的操作系统。其首要任务是调度一切可利用的资源完成 实时控制任务。实时多任务操作系统与分时多任务操作系统之间有明显的区别。 具体的说,对于分时操作系统,软件执行在时间上的要求并不严格,时间上的 错误,一般不会造成灾难性的后果。而对于实时操作系统,主要任务是对事件 进行实时处理,尽管事件可能在无法预知的时刻到达,但软件上必须在事件发 生时能够在严格的时限内做出响应( 系统响应时间) 。另外,实时操作系统的重 要特点是具有系统的可确定性,即系统对运行情况的最好和最坏等情况能做出 精确的估计。 2 42n u e i e l l sp l u s 概述 n u c l e u sp l u s 是一个实时性极强的、抢占式和多任务的r t o s 系统,非常 适合于实时性要求极高的嵌入式应用。n u c l e u sp l u s 系统代码的9 5 是采用 a n s ic 编制的,只有极少数与硬件结合相当紧密的程序部分是采用特定汇编程 序完成的。因此,n u c l e u sp l u s 具有很强的可移植性,几乎能应用在任何微处 理器平台上。 n u c l e u s p l u s 核心部分通常以c 库的形式提供给用户,然后将实时应用建 立在其核心库上。生成的可执t f 4 e 码可以下载到目标机或放置到r o m 中,然 上海大学硕十学位论文 后在目标系统中运行。通常,在一个典型的实时目标系统环境中,能够提供所 有的r t o s 服务,其n u c l e u sp l u s 指令域的操作系统映像大约要占用2 0 k b 内 存。 n u c l e u s p l u s 一般以源代码的形式提供,因而可以通过阅读其源代码以更 加深入的掌握操作系统本身,并可通过修改源代码来满足特殊应用的需要。 2 43n u c i e u sp l u s 的功能特点 由于在一个实时应用中,不同的任务可能有不同的实时性要求,因此在不 同任务间调度处理器的策略非常重要,它直接影响到r t o s 的性能。一些较为 简单的实时应用或软实时系统中的r t o s 常常是通过把处理器分配逻辑嵌入到 实时应用程序的各个任务中,然后采用控制环的方式顺序的轮询来调度各任务 的执行。这种实现技术存在以下弊端。”“: ( 1 ) 响应时间长。当一个关键事件到来需要立即处理时,若处理器正处于 一个最坏情况的任务调度中,则该关键事件的处理必须要等到这个最坏情况的 任务执行完毕后才能获得c p u 执行权。 ( 2 ) 修改困难。由于c p u 分配逻辑是被均分到整个应用代码中的,从而 任何一个任务的执行时间都与其它任务的执行时间相关。因此,当对某一个任 务中的代码进行修改时可能会给整个实时系统带来灾难性的后果。 ( 3 ) 吞吐量减小。当实时应用的任务数增加时,用于查找任务执行所消耗 的时问总和也会增加,而这些时间本来可以用在其它任务的处理中。 ( 4 ) 增大软件开发难度。由于各个实时任务执行时间密切相关,因此若干 软件工程师合作开发一个项目时,协调起来就会比较困难。 n u c l e u sp l u s 按照不同实时任务对时间要求的不同来分配c p u 资源。当 一个更重要的任务需要执行时,n u c l e u sp l u s 就会挂起当前正在执行的任务, 转而执行优先级较高的任务,当这个优先级较高的任务执行完后,原来被挂起 的任务将被重新唤醒继续执行。因此,n u c l e u sp l u s 中的最坏情况的反应时间 就是当前任务被挂起的时间与较高优先级任务被唤醒的时间之和,显然这是一 个固定值。也正是n u c l e u sp l u s 的这种实现机制的不同,使得程序的修改甚至 上海大学硕士学位论文 任务的增加都不可能影响到关键任务的执行和对实时性的要求。 除了任务执行管理外,n u c l e u sp l u s 还提供各种系统功能,其中包括任务 通信、任务同步、定时器以及存储器管理“。 从软件开发角度来看,n u c l e u sp l u s 具有任务独立性和较高的模块化程序 特点,因而使得多个软件工程师可以在n u c l e u sp l u s 下协同工作而不必担,1 5 , 会 对别人产生影响。n u c l e u sp l u s 还能提供独立于目标机平台的运行时间环境, 这对实时系统开发人员至少带来两方面的好处: ( 1 ) 开发人员可以将精力集中在实时任务的处理上而不用去关心底层的硬 件细节。 ( 2 ) 开发出来的软件可以运行在大多数流行的处理器上。 总之,n u c l e u sp l u s 的结构特点极大的提高了实时应用开发的效率,降低 了开发成本,缩短了开发周期。n u c l e u sp l u s 较强的软件可移植性保护了开发 者已有的成果。基于以上原因,本课题中选择n u c l e u sp l u s 作为系统的软件核 心和开发平台。 24 4n u c i e u sp l u s 信号量 信号量提供了一种控制应用程序临界区域执行的机制。n u c l e u sp l u s 提供 了范围在o 4 ,2 9 4 ,9 6 7 ,2 9 4 之间的计数式信号量,该信号量和一个内部变量一 起被创建来表示一个事件。信号量的两个基本操作是o b t a i n ( 获得信号量) 和 r e l e a s e ( 释放信号量) 。o b t a i n 会将信号量的计数值减1 ,而r e l e a s e 则将信号量 的计数值加1 。另外,o b t a i n 提供了三种等待方式可供选择:无条件等待、设 定超时时间和无等待。当一个任务试图o b t a i n 一个计数值为0 的信号量时,任 务会被暂停执行,当一个r e l e s e 操作执行之后,该任务有可能继续被执行。 当多个任务同时等待同一个信号量时,这些任务是以f i f o ( 先进先出) 的 顺序还是按优先级的顺序排列取决于该信号量是如何创建的。如果该信号量支 持f i f o 顺序,任务在中断后最先申请该信号量的任务将最先被执行,依次类 推。如果该信号量支持的是优先级顺序,任务在中断后重新执行时将按优先级 顺序由高到低执行。 上海大学硕士学位论文 n u c l e u sp l u s 操作系统的信号量函数共有以下8 个: n u c r e a t e _ s e m a p h o r e ( ) :创建信号量: n u d e l e t e _ s e m a p h o r e ( ) :删除信号量: n u _ o b t a i n _ s e m a p h o r e ( ) :获得信号量: n u _ r e l e a s e _ s e m a p h o r e ( ) :释放信号量; n u _ e s t a b l i s h e d _ s e m a p h o r e ( ) :返回所有建立的信号量的个数; n u _ r e s e t _ s e m a p h o r e (
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 引导信贷资金投向消费领域的策略及实施路径
- 钢结构安装现场管理与协调方案
- 小学音乐教师招聘考试试题及答案
- DB65T 4376-2021 甜菜孢囊线虫病鉴定和监测技术规程
- 语文综合实践活动:培养团队精神和合作意识教学设计-2025-2026学年中职语文职业模块 服务类语文版
- 第三节 室内乐说课稿-2025-2026学年中职音乐第三单元 璀璨的器乐高教版(公共艺术·音乐篇·第二版)
- DB65T 4508-2022 驴鲜精人工授精技术规程
- 1.4 什么是人工智能说课稿-2023-2024学年小学信息技术(信息科技)小学版(2024)人工智能通识(清华大学版)
- 出租车考试题及答案
- 2025年新能源行业安全管理技术创新与新能源产业安全风险防范报告
- 黄冈市2025年高三年级9月调研考试历史试卷(含答案)
- 二年级乘法算式练习(口诀练习)每日一练模板
- 售后沟通技巧课件
- 进制转换课件-2025-2026学年浙教版高中信息技术必修一
- 店员绩效考核制度
- 电厂电气安全知识培训课件
- 国际汉语考试题及答案
- 交友的智慧(课件)-2025-2026学年七年级道德与法治上册(统编版2024)
- 2025-2026学年语文二年级上册统编版语文园地一 课件
- 2025年中国航空油料集团招聘笔试模拟题与解析
- 2025四川省水电投资经营集团有限公司所属电力公司员工招聘6人备考练习题库及答案解析
评论
0/150
提交评论