(生物医学工程专业论文)基于mc68331的嵌入式软件开发平台的设计与实现.pdf_第1页
(生物医学工程专业论文)基于mc68331的嵌入式软件开发平台的设计与实现.pdf_第2页
(生物医学工程专业论文)基于mc68331的嵌入式软件开发平台的设计与实现.pdf_第3页
(生物医学工程专业论文)基于mc68331的嵌入式软件开发平台的设计与实现.pdf_第4页
(生物医学工程专业论文)基于mc68331的嵌入式软件开发平台的设计与实现.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(生物医学工程专业论文)基于mc68331的嵌入式软件开发平台的设计与实现.pdf.pdf 免费下载

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

文档简介

西北工业大学硕士学位论文a b s t r a c t a b s t r a o t t h ee m b e d d e ds y s t e mi n v o l v e sm u c ht e c h n o l o g y , i n c l u d i n gm i c r o e l e c t r o n i c s , e l e c t r o n i ce n g i n e e r i n g ,t h es o f t w a r e & h a r d w a r eo f c o m p u t e r , c o m m u n i c a t i o n ,a n ds o o n b e i n gu s e di ne v e r yw a l ko fl i f e ,s u c h a sa v i a t i o n ,s p a c e f l i g h t ,i n s t r u m e n t , i n d u s t r i a l - c o n t r o l ,a p p l i a n c ee q u i p m e n t ,i n t e l l i g e n tf a c i l i t y , a n dc o m p u 妣 c o m m u n i c a t i o n & c o n t r o l ,t h ee m b e d d e ds y s t e mh a sb e e nam a j o rb r a n c ho f c o m p u t e rs c i e n c e h o w e v e r , w i t ht h er a p i de x t e n d i n go ft h ee m b e d d e ds y s t e m a p p l i c a t i o n ,t h et r a d i t i o n a ld e v e l o p m e n tm o d eo fe m b e d d e ds y s t e m sc a n n o ts a t i s f y t h ep r a c t i c a ln e e d sa n ym o r e o nt h eo n eh a n d ,e l e c t r o n i ce n g i n e e r so f t e ni g n o r et h e e m b e d d e do p e r a t i o ns y s t e m sa n ds o f t w a r er e u s e o nt h eo t h e rh a n d ,c o m p u t e r s o f t w a r ee n g i n e e r sl a c k st h ee s s e n t i a lh a r d w a r ek n o w l e d g ew h i c hm a k e st h e mc a n n o t a c c e s st h ee m b e d d e ds y s t e m sa r e ae a s i l y a sr e s u l t ,i tb e c o m e sm o r ea n dm o r e i m p o r t a n tt oa d v a n c ead e v e l o p m e n tm o d eb a s e do nd e v e l o p m e n tp l a t f o r m b a s e do nt h eb a s i cc o n c e p to fe m b e d d e ds y s t e m s ,t h et h e s i sb r i e f l ye x p l a i n e dt h e n e c e s s i t y , s t a t u sq u oa n dt r e n do ft h eu s i n go fd e v e l o p m e n tp l a t f o r mi ne m b e d d e d s o f t w a r ed e s i g n t h e n ,t h eb a c k g r o u n da n dt h eh a r d w a r ed e v i c e so ft h es u b j e c tw a s d e s c r i b e d a n dt h e n ,b u i l dt h e d e v e l o p m e n t e n v i r o n m e n tw i t l li n t e r t o o l sa n d n o h a ui c e a c c o r d i n gt os y s t e mr e q u i r e m e n t s ,t h ed e v e l o p m e n tp l a t f o r ma r c h i t e c t u r ew a s d e s i g n e d ,a n dt h ew h o l ep l a t f o r mw a sc o m p a r t m e n t a l i z e dt ot h r e el a y e r s :h a r d w a r e a b s t r a c t i o nl a y e r , m o n i t o r d e b u g g e rl a y e ra n do p e r a t i n gs y s t e ml a y e r i nt e r mo f t h e c h a r a c t e r i s t i c so ft h eh a r d w a r ep l a t f o r m ,t h ed e s i g no ft h eh a r d w a r ea b s t r a c t i o n l a y e r w a s c o m p l e t e d ,i n c l u d i n g b o o t l o a d e r p r o g r a m m i n g ,d e v i c e d r i v e r p r o g r a m m i n ga n do t h e rh a r d w a r ee n c a p s u l a t i o n a f t e r w a r d s ,i no r d e rt om a k eu pt h e i n s u f f i c i e n c yo fm c 6 8 3 3 1 t h em o n i t o r & d e b u g g e rl a y e rw h i c hm a k ee m b e d d e d s o f t w a r ed e v e l o p m e n t i n d e p e n d e n t l yf r o ms p e c i a lt o o l sw a sd e s i g n e d f i n a l l y , r e a l - t i m eo p e r a t i n gs y s t e mg c o s 1 1w a sm i g r a t e dt ot h eh a r d w a r ea b s t r a c t i o n l a y e r e m b e d d e ds o f t w a r e d e v e l o p m e n tp l a t f o r mw a sd e s i g n e da s at h r e e - l a y e r s t r u c t u r ew i t h o u tac o u p l i n gb e t w e e nl a y e r s ,s ot h a ti th a sg o o da d a p t a b i l i t ya n d o p e n n e s sa n dc a ne a s i l yb em o d i f i e df o rd i f f e r e n th a r d w a r ep l a t f o r ma n da c t u a l r e q u i r e m e n t e m b e d d e ds o f t w a r ed e v e l o p m e n tp l a t f o r mc a ns i m p l i f yt h e d e s i g n t t 西北工业大学硕士学位论文 a b s t r a c t p r o c e s sa n ds h o r t e nt h ed e v e l o p m e n tc y c l ea n di m p r o v ed e v e l o p m e n te f f i c i e n c y k e yw o r d s :e m b e d d e ds y s t e m ,d e v e l o p m e n tp l a t f o r m ,m c 6 8 3 31 ,”c o s i i 西北工业大学业 学位论文知识产权声明书 本人完全了解学校有关保护知识产权的规定,即:研究生在校攻读学位期间论文工作 的知识产权单位属于西北工业大学。学校有权保留并向国家有关部门或机构送交论文的复 印件和电子版。本人允许论文被查阅和借阅。学校可以将本学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 同时本人保证,毕业后结合学位论文研究课题再撰写的文章一律注明作者单位为西北工业 大学。 保密论文待解密后适用本声明。 学位论文作者签名 2 川年j 月3 1 日 指导教师签名: 年尹职日 西北工业大学 学位论文原创性声明 秉承学校严谨的学风和优良的科学道德,本人郑重声明:所呈交的学位论文,是本 人在导师的指导下进行研究工作所取得的成果。尽我所知,除文中已经注明引用的内容 和致谢的地方外,本论文不包含任何其他个人或集体已经公开发表或撰写过的研究成 果,不包含本人或其他己申请学位或其他用途使用过的成果。对本文的研究做出重要贡 献的个人和集体,均已在文中以明确方式表明。 本人学位论文与资料若有不实,愿意承担一切相关的法律责任。 学位论文作者签名:建 堋9 3 月3 1 日 西北工业大学硕士学位论文第一章绪论 1 1 引言 第一章绪论 随着微型计算机技术的蓬勃发展与应用领域的日益扩大,从2 0 世纪7 0 年代 开始引入的嵌入式系统的概念【1 】已经发展成为微型计算机系统的一个专门的应 用领域,并且成为计算机系统的一个应用最为广泛的重要分支。进入数字信息技 术和网络技术高速发展的后p c ( p o s t - p c ) 时代后,嵌入式系统更加广泛地渗透到 了制造工业、过程控制、通讯、仪器仪表、汽车、船舶、航空航天、军事装备、 消费类电子产品以及人们的日常生活等方方面面中。可以说,当今世界依靠嵌入 式计算机而运转1 2 1 。 从国家战略目标与产业发展来看,嵌入式软件是实现传统制造业转型与提升 的关键技术,它对整体提升我国制造业的竞争能力、大幅度地增强我国软件自主 创新能力意义重大,是中国厂商从“中国制造”向“中国创造”转变的最佳契机。面 对国外巨头的争相进入,对关键性、共性化的嵌入式软件开发平台等基础课题进 行深入研究,无疑将有助于提高我国嵌入式软件行业的核心技术竞争力、促进嵌 入式软件产业的快速发展。 1 2 选题的背景和意义 嵌入式系统是以应用为中心、软件硬件可裁剪的、适应应用系统对功能、可 靠性、成本、体积、功耗等严格综合性要求的专用计算机系统。通常,嵌入式系 统是由带有处理器的单块电路板以及存储在r o m 中的软件程序组成【3 】。它是集 软硬件于一体的可独立工作的系统,硬件是支撑,软件是灵魂 4 1 。 嵌入式软件,简单的讲就是运行在嵌入式硬件系统上的软件,是针对特定的 实际专业领域、基于相应的嵌入式硬件平台的、满足用户要求的时间和精度要求、 完成用户预期任务的计算机软件。所有的嵌入式产品中都需要嵌入式软件来提供 灵活多样、而且应用特制的功能。嵌入式软件作为包含在这些硬件产品中的特殊 软件形态,其产业增幅不断加大,在整个软件产业的比重不断提高,全世界每年 用于嵌入式软件研发的投资达数十亿美元【5 1 。国内,2 0 0 0 - 2 0 0 5 年嵌入式系统软 件市场年平均增速达3 8 以上,2 0 0 5 年全年完成嵌入式系统软件收入5 3 5 亿元, 比0 4 年增长3 5 ,占全部软件业务收入的1 3 7 t 6 l 。 西北工业大学硕士学位论文 第一章绪论 在嵌入式系统的应用领域变得日益广泛的同时,由于用户需求的持续驱动以 及技术的鼙耨,不蹶涌现的叛功戆_ 和新应用被加入系统之巾,嵌入忒软件融经不 再局限于暇先的驱动程序和简单威用程序综合这一框架中,嵌入式软件的种类、 数爨不断增加、规模和复杂性不断提高,代码量在赣万行级的嵌入戏程序融经非 常酱遍。而另一方面,由予激烈的商业竞争环境,斑产厂商往往既要求保诞嵌入 式系统的稳定性、可靠性以及高性能,又殿求尽慧加快嵌入式系绕的开发速度、 缩短产品t 市时间t t ! 。 但是,市场上很多半导体厂家提供的嵌入式芯片均为裸机状态,没有掇供支 掩应用系统设计豹广义平台。在既纂础上嵌入式软件设计都是扶零汗始,鬣接在 硬件平台上进行,采用处理器的汇编语言进行编程,直接对各种硬件设备进行控 巷8 帮访阔。用户除了编写典体豹疲塌程穿拜,还要编写各种箍控程痔和调试工具 软件来构建相应的调试环境。尤其是对于多任务和实时性处理,还必须编写出性 畿伉纯静系统软耱,根据各令 壬务豹重要魏递彳亍统筹兼颥和台理调度,戳确保每 个任务能及时执行,满足系统要求哺1 。这种面面俱到的小f 譬坊式开发模式使得嵌 入鼗较释搿发蠲瑟长、门 | | ;! 意。矮穗对个烈转柬丸亟的露靛缝丈,褥曼摄簿僚迁 程序质量。特别是在国内,嵌入式系统的歼发工作大多由领域专家承担,而领域 专家一觳势不吴餐缀涤霉豹专 算梳理论基懿,多年潍来已缀习惯手毙设诗疆徉再 编写汇编语言来开发控制系统的模式。很多时候甚楚都不使用高级语言,就更谈 不上进行需求分撰、镬蹋嵌入式搽终系统、梅檠软徉模块、避葶亍软佟复霜等更高 要求了,即使开发相类似的产品往往也要从底层做起,同样再花很长时间例。 这样豹现状决定7 当嚣我国豹嵌入式技本发袋跑较缓授,瑟显瘫震熬广发与 深度都不够。在这样的情形之下,选择一个合适的操作系统,在一个大家比较熟 悉瓣硬终警台之上梅建一个嵌入式软箨嚣发平台,将是一磐菲豢蠢意义黪工终 1 0 l 。因此,本论文根据实际项目的需要,在3 2 位微控制器m c 6 8 3 3 1 上实现了 一令嵌入式较停秀发平台。在本嵌入式软咎牙发乎螽之上,嚣发入受不嚣要黠操 作系统内梭的具体实现、底层硬件的具体细节有详细的了解就能够进行一些嵌入 式软锌静嚣发工 棼。在裂髑零平台嚣发嵌入式系统戆蛙候,领域专家可以谯一定 程度上绕歼软件专业知识爨垒,整个开发工作也可以在一定程度上消除对菜些专 用王具懿依簇。有了本平台作为基础,牙发者只霉要终精力集中在袈令应用程孝 韵编写上,应用程序之间的联系都遵循同样的接口协议。这样不同的开发者就可 以缀方便鸵进行协作舞发,提离秀发效率,薅且各个舞发者拜发的撰序也霹以提 互利用,很好的做剿资源熬享。这样的开发平台势必对嵌入式软件产业的发展起 至4 促进作用。 2 西北工业大学硕士学位论文第一章绪论 1 3 国内外发展现状 1 3 1 国外科研成果及产品 在国外,对嵌入式软件平台的研究起步较早。八十年代初,美国就出现了商 业化的r t o s 产品,如r e a d y 公司1 9 8 1 年发布的r t o s 产品v r t x 。经过 二十多年的发展,国际市场上出现了以v r t x 、v x w o r k s 、p s o s 、w m d o w sc e 、 e p o c 等为代表的近四十个实时操作系统家族,支持不同处理器的2 0 0 多个产 品,广泛应用于信息家电、数字通信等领域。 而应用程序的开发平台起初主要由第三方工具公司提供,为不同操作系统的 不同处理器版本专门定制,如美国m e t r o w e r k s 公司的产品c o d e w a r r i o r 。随着 用户对嵌入式软件开发平台需求大增,r t o s 供应商也纷纷投入巨资发展本系列 r t o s 产品的开发平台,如w m d r i v e r 公司的产品t o r n a d o 、i s i 公司( 该公司 目前已被w i n d r i v e r 公司兼并) 的产品p r i s m + 、m i c r o t e e 公司的产品s p e c t r a 、 m i c r o s o f t 公司的产品w m d o w sc ep l a t f o r n lb u i l d e r 等。 国际上,嵌入式软件开发平台的另一支重要的研发队伍是g n u 运动。目 前一些公司已在g n u 软件的基础上,经过集成、优化和测试,推出更加成熟、 稳定的商业化版本的嵌入式软件开发平台,如c y g n u s ( 该公司目前已被r e d h a t 公司兼并) 公司推出的商业化产品g n up r oe m b e d d e d t o o lk i t n l 。 1 3 2 国内科研成果及产品 在国内,从9 0 年代初开始经过一些单位多年的攻关,已经突破了r t o s 的 主要关键技术,并开发出具有一定先进水平、自主版权的r t o s 产品,如电子 科技大学的c r t o s 、中国科学院北京软件工程中心的h o p e n ( 女娲) 和浙江大 学的h b o s 等r t o s 产品。 而国内的嵌入式软件开发平台则多数是国外引进,自主研究和开发成果较 少,仅触及部分关键技术,与国际先进水平相比存在较大的差距。其中只有电子 科技大学“九五”科研成果,一套基于g n u 软件、支持i n t e lx 8 6 处理器的嵌 入式软件基本开发工具系统g n a t r t e m s 是一个较为成功的产品,它包括交叉 g c c 编译器、交叉g d b 调试器、目标监控器等,实现了基本的编辑、交叉编 译、交叉调试等功能,支持a d a 、c 、c + + 、汇编等语言的开发。在此基础上, 北京科银京成技术有限公司吸收了国际上有代表性的嵌入式软件开发平台产品 的先进、成熟技术,并紧密跟踪嵌入式软件开发平台的未来发展趋势,成功地推 西北工业大学硕士学位论文 第一章绪论 出了一种满足现代数字化产黼开发慕本需求的嵌入式软件开发平台 l a m b d a t o o l 1 2 j 。此外。东北大学软件中心也推出了他们研制的嵌入式软件开发 平台n e s l 2 0 0 0 。 4 论文豹主要工作 本文的研究褂的是基予m c 6 8 3 3 1 开发一个嵌入式软件开发平台。嵌入式软 件开发平台本身是一个系统的工程,涉及的知识面较宽,不但要求程序开发人员 对软件开发有眈较深入豹了解,同时要求对硬俘的知识也要有一定的了解。在这 个系统的开发过程中,本文主要从事了如下一些研究与设计工作: ( 1 ) 提出建藏一个具有三层结构的开发平台,各层之阐其有一种较松散豹 耦会关系,这样就可以根掇需要修改甚至更换开发平台中的某一层。 ( 2 ) 宪成了骥释擒象朦酶设计,包括系统弓l 孥程痔b o o t l o a d e r 、l c d 驱动 程序、键盘驱动程序以及其它一些与硬件和编译器相关的细节封装。 f 3 1 宠穆了麓整调试溪戆爱诗:露静- cm c 6 8 3 3 1 不支持在线下载黪不是, 使嵌入式软件开发摆脱了对某些专用工具的依赖。 ( 4 ) 邋遘在襞俘蘩象瓣上移穰p c o s - i i 鼗入式实辩撵终系统痰孩聿弩建7 并 发平台的嵌入式操作系统层,并验证了内核移植的正确性。 4 西北工业大学硕士学位论文 第二章总体设计 第二章总体设计 本章首先介绍本课题的项目来源“o p t 智能监控系统”。然后介绍了系 统中使用的m c 6 8 3 3 1 嵌入式控制器,并设计了嵌入式软件开发平台的体系结构, 最后介绍了系统开发环境的建立过程。 2 1o p t 智能监控系统简介 o p t 智能监控系统是教研室某实际项目中的一个子系统。o p t 智能监控系统 作为整个系统的上位机是进行人机交互的重要设备。不但可以发送命令,启动运 行,对整个系统的工作状态和相关参数进行实时监控和调整,还可以对系统的运 行故障自动报警和显示。 根据o p t 智能监控系统的各项功能要求,系统以m c 6 8 3 3 1 微控制器为核心, 扩展了大容量的程序存储器和数据存储器,外接了l c d 、矩阵式键盘以及多个 l e d 指示灯,并通过电源监控电路实现异常掉电时的数据保存。o p t 智能监控系 统的硬件结构如图2 1 所示。 图2 1o p t 智能监控系统硬件结构 2 2 微控制器m c 6 8 3 3 1 概述 总线 总线 线 m c 6 8 3 3 1 是m o t o r o l a f r e e s c a l e 公司在m c 6 8 0 2 0 m p u 的基础上推出 西北工业大学硕士学位论文第二章总体设计 r o ll 喇曼曼皇鼍舅篡舞皇曼墨詈寡鼍曼皇曼曼篡删兽暑曼曼! 皇嗽冀囊皇冀簟鼍曼皇删薯量董奠删鼍量置宣墨量曼皇! 皇簟鼍置量一 的一种3 2 位高性能微控制器。它采用h c m o s 技术精简指令系统计算机( r i s c ) 技术,具蠢功能强、运算精度离、功耗低、体积小、可靠性高和系统设计麓单、 程序开发方便等显著特点,在医疗仪器设铸、智能化仪器仪表、精密控制等高性 能、低功耗应用场合有着广泛应用。 m c 6 8 3 3 1 是采用模块化结构的芯片,由中央处理器c p u 3 2 、系统集成模块 s i m 、队列串行模块q s m ,并行i o 口,通用定时器g p t 组成【1 3 1 。模块结构如 图2 2 所示。 | 孛央处理器 | l c p u 3 2 内部总线 s l 蠢莲 ii l 队列串行模块ii 通用定时器i 。+一 l q ! 坚l lq 避l 圆2 - 2m c 6 8 3 3 1 模块结构圉 ( :) 中文处懋器e p u 3 2 m c 6 8 3 3 1 的中央处理器c p u 3 2 是在工业级处理器m c 6 8 0 0 0 的基础上开发 出来静。冀源代码每m c 6 8 0 0 0 系列基本指令系统随上兼容,具有优异豹数据处 理能力、快速乘除及移位指令、动态宽度的快速总线接口,增强的寻址能力,还 增船了低功耗察稀饭与查袭指令,支持高级语言,丽完成僚、字节、字、双字和 4 字数据传输。c p u 3 2 有8 个3 2 位通用数据寄存器,7 个3 2 位通用地址寄存器, 势藏数据寄存器穗霹作兔蘩热器,戆蘸寄存器殇可捧为交疆寄存器筏雳,使褥编 程极为方便。c p u 3 2 采用踅叠执行方式,取指令和执行指令可同时进行,执行 每条指令蠹馨辩润大大洚低【1 4 1 。 ( 2 ) 系统集成模块s i m 系统繁成模块s i m ( s y s t e mi n t e g r a t i o nm o d u l e ) 霹确定复位詹竣裙始缘麓溺 m c 6 8 3 3 1 的状态。它由系统配置和保护模块、时钟合成器、外部总线接口、片 选模块窝系统测试攮块等予攘块缝残f 瑚。 ( 3 ) 队列串行模块q s m 获残枣孬模凌q s m ( q u e u e ds e r i a lm o d u l e ) 为m c 6 8 3 3 1 提供舞令猹壹戆事 行通信接口,分别是队列串行外围接口q s p i ( q u e u e ds e r i a l p e r i p h e r a l i n t e r f a c e ) 积宰孬逶馕接叠s c i ( s e r i a lc o m m u n i c a t i o ni n t e r f a c e ) 。q s p i 是m c 6 8 3 3 1 与终 部设备或其它m c u 进行同步通信的全双工串行接口,它提供方便的外部扩展功 能及全双王、固步戆数握竣入、数摆竣出、率行融镑等透痿功能。s c i 刘罴全双 工通用异步接l 殳发送器( u a r t ) ,具有先进的错谡检测线路、可提供6 4 - 5 2 4 k 6 秀l 工韭大学颟学整论文 簇二牵慧锩设计 波特率的通信速率,特有的唤醒功能允许c p u 不间贩运行纛到检测了一个真正 的空附信号戏接收到个新的地址字节n 6 1 。 ( 4 ) 并行i o 蹦 m c 6 8 3 3 1 配置蠢3 个八位双向并行i o 口:d 、e 、f 口。每个口有八根 信号线,执行并行i o 或离散f o 操作。此外,还有一个7 饿并行口c ,只可以 作为输出口,以上这瞪个并彳亍瑟的每板信号线都有内部寄存器与之对应。 ( 5 ) 通用定时器g p t 邋用定时器g i r l ( 疆戮嚣r a i ,p 诤o s e 髓m e r ) 是一种简单灵巧盼十一逶 道定时器,傀括比较捕捉单惩、脉冲累加器、脉冲宽度调制单元及预定标器等 死个独立子模块,可苏独立予c p u 之辨,执行各稀定瞻、脉;申生成等与时阔蠢关 的操作,减轻c p u 的负担。它也可以作为通用i o e i 使用【1 7 1 。 2 3 开发平台的体系结构设计 姐历史缀验可以得出,在软件开发项目的整个设计过程中,选择一个良好的 体系结梅稷褊造巍鬣楚至关麓要静。软侔体系绪稳在缀大程度上决定了系统熊否 满足功能、性能、安企性、可靠性这蝗软件邀行特性,以及务种可维护性、w 适 应楼、虿移穰性、胃踅瑗往等那些不缝壹接遴过鼹察系统运稃来度蘩耱特经 灞, 良好的体系结构设计是决定软件系统成功的最重要因素。而嵌入式软件开发平台 熬体系结搀决定了它筢否瀵怒集成搜、秀赦瞧、逶矮经、灵辫悭要求,一些发达 国家派积极歼展开发平台体系结构的研究【1 9 1 。 , 软捧髂系结兹愚整令软佟竣诗鹣秀壤,楚整令较终系统簸孚靛设专 凌繁残 果。如图2 3 所示,在本系统的设计中我们引入了层次式软件体系结构的设计思 想,将整个嚣发平台翻分失蠖舞薤象豢、整羧壤试屡及嵌入妓操嫠系统层。 针对特定应用的应用程序 = = = z = = := :l = ;“= 二 歉入式撩终系绞屡 面磊磊r 厂 硬锌糖象层 = ? = ? = = 7 7 = r 二= z = m c 6 8 3 3 1 目标机硬件 1 襄篇i 发平台i l 蚕2 - 3 嵌入式软件开发平台俸系络构 ( 1 ) 硬件抽象层 嵌入式软件开发平台需簧应露鬻各耱不溺躬嵌入瓮系统歼发过稷中去,然 嚣 不同的嵌入式系统往往具有不同的硬件结构,即使它们都是以m c 6 8 3 3 1 为核心 送行设计静,它稍戆辫围疆搏也会膏缀大不麓。在并发平台审雩| 入疆律籀蒙联藏 7 西北工业大学硕士学能论文 第二章总体设计 是为了提高平台的适应性,使开发平台能够以最小的代价成用的不问的硬件平台 上去,同时可以保迸开发出来的应用程序及上层软件能够在不同的硬件平台上复 用。硬件抽象层负责执行与硬件相关的操作、向上掇供一个没有硬件特性的接口, 使上层软件忽略硬传细节藤在一个接象出来的层次太与硬l 譬交互,从而屏蔽了硬 件细节、改善了上滕软件的稳定性。硬件抽象层与硬件密切相关,掰标机硬件发 生任何变化,硬件抽象层也要随之谶行修改。 ( 2 ) 靛控调试层 监控调试层是驻留在目标机上通过软件手段实现的调试代理。它向开发人员 提供了一种对上层操作系统内核及废用程序运行状况进行检查的办法,开发入员 可以借助监控调试朦程序来观察程序的执行路径和所关心的变量、指针等信息。 监控诱试藩程序通邋软件方法向开发入员掇供了多种切实的开发手段,使系统静 整个开发和维护过稷摆脱了对某些专用工具的依赖;在程序开发阶段,监控调试 层珂瑷帮韵牙发入鼹对所开发兹程痔迸季亍调试;在系统维护阶段,簸控调试层又 可以帮助系统维护人员对象统故障j l 行快速诊断。嵌入式软件开发平台向开发人 爨掇供簦控灞试功熊熹爱髓衙可激骚簸纛入霞系绩驹哥筘赡塞、缔短齐芰鬻鬻、 减少开发费用。监控调试层是与处理器指令集相关的。 ( 3 ) 焱入式掇终系统滋 在通常的嵌入式系统中,嵌入斌操作系统可以肴成是系统资源的管理者,负 责管理系绕强孛静务耪软瑗律资源,傻整个系统能够褰效、霹靠静运转。嚣获嵌 入式软件开发的角度则可以把嵌入式操作系统看成一种扩展机或虚拟机,它向应 霞稷亭提揆枣塞懿系统镶霜露数 a p l ) 。这撵,黢溺程彦戆拜发裁可敬盔a p i 这个编程接口的层面上进行,通过调用a p i 接口来实现应用程序的功能,使得 这黧废趸程痔兹嚣发交褥受熬容易。霉以滋,嵌入式攥终系绞是嵌入式软搏强发 平台化最有力的手段。在嵌入式操作系统环境下开发应用程序使程序的设计和扩 震变缛窖易,不霉瑟大豹改动裁可戮增热联煞珐戆;透过将疲曩程序分割成装于 独崴的任务模块,可以使应用程序的设计开发过程犬为简化。由于硬件抽象层已 屏蔽了硬l 孛纲节特援,所以嵌入式操终系绕层是积嫒磐无关鳇。 这种层次化结构有助于组织开发平台的开发过程,减少诊断和修改错误的工 作。另外,这秽结构也使缮域强秀发平台功缝更为容易,其中菜一层可以修改或 者羧层替换丙不会影响平台的其它部分,这就使得开发平台的适应饿、可移植性 大大增强【2 0 l 。当器获在其它硬件平螽上进弦嵌入式软件开发时,缝往只需要将 某一层上的软件稍加修改,我们就可以把本汗发平台应用到其它嵌入式系统的开 发过程中去:当m c 6 8 3 3 1 的外围电路发生变化时,或者系统选用的是6 8 k 系列 中其它型号微控制器时,我们只需要对开发平台的硬件抽象滕作一些细微调熬即 8 虿裁工监大学矮学霞论文第= 章慧体设诗 可;如果系统选用的是非c p u 3 2 内核的微处理器则只需要修改监技调试层中的 指令集部分及硬件抽象层中的c p u 初始化部分即可;如果窟际应用中不需黉使 用操作系统,那么将操作系绕的代码删除即可,硬件拯象层朔监控调试层完全可 以继续工作;如果开发平台中的操俸系统不熊满足应用需求刘可以受换一个操作 系统,这在硬件抽象层和监控调试朦的支持下是很绺易做到的。 2 4 系统开发环境的建立 由于目标机的资源有限,嵌入式系统开发需要把舞发环境和目标运行环境分 离:在宿主梳上建藏开发环境,迸行程序编码和交叉编译,然后在宿主机释薛标 机之间建立连接,将程序下栽到目标机上进行调试。 就本系统的开发而言,强标梳就是o p t 智能蕊控系统的硬俸平台,宿主视 则是普通p c 机。据此,我们选择的开发工具有:t a s k i n g 公司的i n t e r t o o l s 集 成昴发系统辖”,它怒一个完整盼集成开发系统,包括嵌入式集成开发环境软件 e d e 、c c + + 编译器、汇编器、链接,定位器、c r o s s v i e w p r o 模拟调试器等;n o h a u 公霹静e m u l l 6 3 0 0 开发税,选择瓣墅号麓锌对m c 6 8 3 3 1 酶实辩程线仿真系统 瞄瑚】,所选汗发工具功能介绍和应用方法如下: ( 1 ) i n t e r t o o l s 汗发系缓是专羹锌辩嵌入式系统豹开发褥设诗静一套软俘工 具。i n t e r t o o l s 是一个交互式开发系统洲,舆有柔性和组合的模块化工具。关键 部分毽括嵌入式集裁并发繇壤软捧( e d e ) 、e 起+ + 编译器、优纯器、汇壤嚣、 链接定位器、c r o s s v i e wp r o 软件模拟调试器等。生成的代码可用予多数著名仿 真嚣生产厂巍鹃产菇上( 蘩n o h a u ,m e t a l i n k ,a s h l i n g 等) 。 基于w m d o w s 下的嵌入式系统集成开发环境软件( e d e ) 是面向工程的集 成秀发嚣壤,戆够完成麸缡瓣、绽译爨调试熬一条龙羧务;繇凌可敦扩震秘醚置, 支持鼠标器,界面发好。e d e 除开发工具一条龙服务外,辅助性服务一条龙配 套溅务,热安装( s e t u p ) 簇成化、在线鬓莓手麓( m a n u a l ) 豢成铑、滋镑 管瑷( e l u r 0 帔h a n d l i n g ) 集成化、操作记录( l o g ) 集成化等。 t a s k i n gc 交叉编译嚣在p c 囊掇平台上运器,鬻有力每令m c 6 8 k 系熨徽 处珊器专门设计的优化工具和c 语裔函数库。如图2 _ 4 所示的c r o s s v i e wp r o 调 试爨_ 工终在w i n d o w s 乎鑫之上,贮濯在主擞孛,栽够纛实瓣内孩紧磐鳕接,实 现源级代码调试;通过调试器可以设置任务断点、最示和修改内核数据结构,以 及扶w i n d o w s 繇境巾交互媳执行c 邋数。 9 西北工业大学硕士学位论文第二章总体设计 图2 - 4c r o s s v i e wp r o 软件模拟调试器 2 ) 知搿l i 6 结0 g p c 是尚蓄宵龟路仿真器亩尊p c 杭,适用予摩托箩j = 迁i 6 位m c 6 8 h c l 6 和3 2 位m c 6 8 3 x x 微处理器。仿真器系统包搔:仿真板、特性板、 跟踪板、双螺旋电缆线帮嚣标适醚器等硬伟和s e e h a u 软件。仿粪系统有疆种 有效配置方式:i s a 卡仿真器( p l u g - i n ) 、高速并行箱( h s p ) 、仿真器并行电缆 ( 嚣p c ) 、低成本王妲标准终构( 王- i s a ) 。葵中蘸滔者是完整静仿粪系统,后两 者鼹没有跟踪功能的b d m 系统。本设计采用i s a 崔仿真器方式,即把仿真板和 跟踪板安装在现有静p c 蠹。既减少了魏买并行箱静花费,又其有蔽踪潺试臻艉。 图2 - 5s e e h a u 调试环境 1 0 西北工业大学硕士学位论文 第二苹总体设计 通过s e e h a u 用户界面来配置和运行仿真器,s e e h a u 是一种高级语言用 户界面,允许用户执行下列任务:基于c 或汇编代码的加载、运行、单步和停 止程序:设置触发器和观察跟踪( 用可选跟踪板) ;修改和观察存贮器内容,包 括各种专用寄存器( s f r s ) 、设置软件断点( 1 6 3 0 0 系列没有硬件断点) 、用程 序性能分析器( p p a ) 分析代码。s e e h a u 调试环境如图2 5 所示。 ( 3 ) 根据开发工具的性能和作用,可以确定系统开发步骤,如图2 - 6 所示。 设置e d e 界面 晶痈程心 t 一源程一 项目创建 ,tt 汇编器 h 设置工具选项h 编译器 i 蝴h 函数库器k j 连接,定位器卜( 目标模块) p 格式程序k 裟黧爿s e e a u 一 奋t l - im c 6 8 3 3 l 硬件平台 图2 - 6 系统开发步骤 e m u l l 6 3 0 0 p c 具有在线汇编反汇编器功能。s e e h a u 和c 编译器之间通 过数据文件接口。源程序经c 编译器编译后生成某种标准数据文件( 如a b s 件) , 主机上的仿真器调试环境读入该数据文件后即可进行源级调试。 在本系统软件设计中,用模拟调试器进行各个文件的单独调试和部分工程的 调试时,并没有连接硬件系统。因为它无法与i c e 一样,仿真嵌入式系统中的 实际执行情况。但是,由于这种调试比在n o h a u 开发机上调试方便,不用在 修改之后反复加载。所以,它的作用就是在软件设计前期大量减少i c e 仿真时 的报告错误和重新装载次数。模拟调试通过后,再用仿真器集中实时调试,重复 修改、装载,直至程序正确运行。 西北工业大学硕士学位论文 第二章总体设计 2 5 本章小结 本章首先说明了课题的来源和背景,介绍了进行平台开发的硬件配置;其次, 在此基础上对嵌入式软件开发平台进行了体系结构设计和层次划分;最后,根据 系统总体设计,建立了系统的交互式开发环境,并研究了各开发工具的使用方法、 设计了整个开发流程。 嚣托工业大学硕士学位论文 第三章硬, ! 抽象层设计 第三章硬件抽象层设计 硬件抽象层的基本思想是把嵌入式系统的上层软件与具体的硬件平台隔离 开来,也就怒说,在硬侔抽象层中,把所有与硬件稠笑盼代褊都封装起来,并向 上提供一个廉拟的硬件平台,而平台的上两层和待开发的嵌入式应用程序就避行 在这个虚撅静硬件平台上。磷件擒象蘑负责赢接与硬徉努交邋,对硬件进行麓瑾 和控制,并为上层软件及操作系统提供所需的驱动支持。一般说来,硬件抽象层 惫括菇下凡方面兹肉容:零| 鼯蕊载程序b o o t l o a d c r 、硬释穰关酶设备驱动及冀它 硬件相关的代码。硬件抽象艨与硬件密切相关,在设计过程中我主要参考了课题 组帮茏及其德同学豹稽关论文【2 m 再。 3 。1b o o t l o a d e r 羹每设诗与实凌 葶l 导麓载程序b o o t l o a d e r 是系统鸯鼙毫露遂行静第一莰软件代码。 毒萃穗谎, b o o t l o a d e r 就是在操作系统内核运行之前运彳亍的一段小程序,通过这段小程序, 我粕霹戳拐始纯硬释设备,建立内存空蓠懿浚瓣瑟,获悉将系统静软疆俘繇缓带 到一个合适的状态,以便为歼发平台的运行域正常调用操作系统内核和上层软件 准备妊歪臻懿环境。b o o t l o a d e r 静实溪赛度谈赖于其俸懿硬绛平台,对手不鞫戆 c p u 体系结构和板级设备鹳己置,需要不同的b o o t l o a d e r 。但是,任何一个 b o o f l o a d e r 程旁藜是耄冀缀秘鲶纯、叛缀秘娥促戳及系统缓秘始毒| :三大功能模块 构成的。 3 1 t 片级初始化 片级初始化主要完成微处理器的初始化,包括设臀微处理器的核心寄存器和 控制哿存器,微处理器核心童作摸式以及其鼹部总线模式等。片级扔始化把微处 理器从上电时的缺省状态逐步设置成为系统所要求的工作状态,这是个纯硬件 的初始化过壤。 m c 6 8 3 3 1 在上嗽、r e s e t 弓i 脚变低以及发生一些严重错误时会发生复位操 作。在复位操作对,c p u 蓠先从地址$ o o o o o o 处取复位向量( 包括系统栈攒针 s s p 和程序计数器p c 的初始值) ,然后从p c 指出的存储单元开始执行程序。复 位i 句_ 嶷值需要在编译链接之前定义好; 西北工业大学硕士学位论文 第三章硬件抽象层设计 o r g $ 0 0 0 0 0 0 ; d c l $ 0 0 0 c 0 0 0 0 :s s p 值 d c l $ 0 0 0 0 0 4 0 0 ;p c 值 这样,b o o t l o a d e r 的程序入口必须定址于地址$ 0 0 0 4 0 0 ( p c 初始值) 处。片 级初始化程序需要实现下列操作:禁止跟踪方式、进入管理方式、屏蔽所有中断; 初始化向量基址寄存器;设置系统时钟:设置总线监视器、暂停监视器和软件看 门狗;设置片选信号;设置队列串行模块;设置周期性中断定时器。在具体实现 时,我们分两部分来实现。 ( 1 ) 首先是设置c p u 的内部核心寄存器、设置片选并初始化r a m ,这部 分完全用汇编语言实现: o r g $ 0 0 0 4 0 0 ;b o o t l o a d e r 程序入口地址 c p u i n i t : m o v e w # $ 2 7 0 0 ,s r ;进入管理级,屏蔽所有中断 m o v e w 群$ o o ,v b 心 m o v e b 群$ o o s c r :关闭看门;| 占i o r , w # $ 0 0 4 f , s i m m c r ;m m = $ l ,i a r b = $ f , t u r ns h o wc y c l e so n m o v e b # $ 7 f , s y n c r ;将系统时钟频率设置为1 6 7 8 m i - i z m o v e w # $ 0 0 f f , c s p a r 0 ;分配片选引脚 m o v e w # $ 0 0 0 1 ,c s p a r l ;分配片选引脚 m o v e w # $ 0 0 0 6 ,c s b a 褂汀;设置r o m 基地址$ 0 0 0 0 0 0 、块长度5 1 2 k m o v e w # $ 7 8 8 0 ,c s o r b t ;c s b o o t 异步双字节,读写,与a s 同步,内部 生成d s a c k 并插入两个等待状态,管理用户级空间,禁止a v e c m o v e w # $ 0 8 0 5 ,c s b a r 0 ;设置r a m 片选端c s 0 基址$ 0 8 0 0 0 0 、块长度2 5 6 k m o v e w # $ 5 0 3 0 ,c s o r 0 ;c s 0 异步高字节,只写,与a s 同步,内部生成 d s a c k 并插入0 个等待状态,管理用户级空间,禁止a v e c m o v e w # $ 0 8 0 5 ,c s b a r l ;设置r a m 片选端c s l 基址$ 8 0 0 0 0 、块长度2 5 6 k m o v e w # $ 3 0 3 0 ,c s o r l ;c s l 异步低字节,只写,与a s 同步,内部生成 d s a c k 并插入0 个等待状态,管理佣户级空间,禁止a v e c m o v e w # $ 0 8 0 5 ,c s b a r 2 ;设置r a m 片选端c s 2 基址$ 8 0 0 0 0 、块长度2 5 6 k m o v e w # $ 6 8 3 0 ,c s o r 2 ;c s 2 异步双字节,只读,与a s

温馨提示

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

评论

0/150

提交评论