(计算机应用技术专业论文)基于嵌入式linux的远程监控系统的设计与实现.pdf_第1页
(计算机应用技术专业论文)基于嵌入式linux的远程监控系统的设计与实现.pdf_第2页
(计算机应用技术专业论文)基于嵌入式linux的远程监控系统的设计与实现.pdf_第3页
(计算机应用技术专业论文)基于嵌入式linux的远程监控系统的设计与实现.pdf_第4页
(计算机应用技术专业论文)基于嵌入式linux的远程监控系统的设计与实现.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(计算机应用技术专业论文)基于嵌入式linux的远程监控系统的设计与实现.pdf.pdf 免费下载

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

文档简介

哈尔滨理工大学工学硕士学位论文 摘要 嵌入式远程监控系统是信息网络与工业控制网络结合的产物,它通过现 场控制网络、企业内部网和i n t e r n e t ,把分布于各地的智能仪表系统连接起 来,实现与远程控制设备的信息交互,完成远程监视与控制任务。远程监控 系统是当前工业自动化应用领域研究的热点之一。 本文首先简要介绍了嵌入式系统和嵌入式l i n u x 的特点,给出了嵌入式 系统的相关硬件结构,重点论述了$ 3 c 2 4 1 0 处理器与存储器和网络控制器芯 片的接口设计问题。同时描述了如何构建嵌入式l i n u x 操作系统为嵌入 式系统移植嵌入式操作系统,保证了应用程序的软件运行环境。接着提出了 系统的总体实现方案和整体框架,在此基础上实现了各个模块的功能:串口 通信模块采用r s 2 3 2 串口通信协议来完成对现场的数据接收;介绍了嵌入 式数据库系统s q l i t e 并给出了s q l i t e 的典型特征和体系结构,对s q l i t e 进行 开发和移植;详细阐述嵌入式w e b 服务器的工作原理和设计方法,介绍了 c g i 的工作原理及规范,并对c g i 应用程序进行了实现,使得远程用户只需 要通过浏览器而无需专用软件就可以对工业现场设备进行监控。 对系统运行的实时性进行了分析和改进,提出了一种基于价值的可适应 性的调度策略,并与r m s 和e d f 调度策略进行了比较。在用于处理的实时数 据接近满载甚至超载的情况下,基于价值的可适应性调度策略显示了在特殊 情况下的优势,有效地提高了该系统的性能。最后对本文的工作做了总结。 关键词嵌入式l i n u x ;远程监控系统;s q l i t e ;嵌入式服务器 哈尔滨理工大学t 学硕士学位论文 d e s i g na n di m p l e m e n t a t i o no fr e m o t em o n i t o r i n g a n d c o n t r o l l i n gs y s t e mb a s e d o ne m b e d d e dl i n u x a b s t r a c t r e m o t e m o n i t o r i n g a n d c o n t r o l l i n gs y s t e m i st h ec o m b i n a t i o no f i n f o r m a t i o n n e t w o r ka n d i n d u s t r y c o n t r o l n e t w o r k i t c o n n e c t st h es m a r t i n t e l l i g e n ti n s t r u m e n t a t i o ns y s t e md i s t r i b u t e di nv a r i o u sl o c a l i t i e st h r o u g ht h e s c e n ec o n t r o ln e t w o r k ,i n t r a n e ta n dt h e i n t e r n e t ;i m p l e m e n t s i n f o r m a t i o n i n t e r a c t i o nw i t hr e m o t ec o n t r o l l i n gd e v i c e s ,c o m p l e t e sr e m o t em o n i t o r i n ga n d c o n t r o l l i n gt a s k s r e m o t em o n i t o r i n ga n dc o n t r o l l i n gs y s t e mi so n eo ft h eh o t s p o t a m o n gt h ei n d u s t r ya u t o m a t i ca p p l i c a t i o nf i e l d t h ea r t i c l eb r i e f l yi n t r o d u c e st h ef e a t u r e so fe m b e d d e ds y s t e ma n dt h e e m b e d d e dl i n u xs y s t e m ,g i v e st h ee m b e d d e ds y s t e m sh a r d w a r es t r u c t u r e ,a n d m a i n l yf o c u s e so nt h ei n t e r f a c ed e s i g no f $ 3 c 2 4 1 0m i c r o p r o c e s s o ra n dt h e m e m o r ya n dt h en e t w o r kc o n t r o l l e rc h i p a tt h es a m et i m ei n t r o d u c e sh o wt o b u i l de m b e d d e dl i n u xo p e r a t i n gs y s t e m - f o rt h et r a n s p l a n t a t i o no fe m b e d d e d o p e r a t i n gs y s t e mt ot h ee m b e d d e ds y s t e m ,e n s u r i n gt h ea p p l i c a t i o ns o f t w a r e o p e r a t i n ge n v i r o n m e n t t h e ni tp r o p o s e st h eo v e r a l ls o l u t i o ns c h e d u l e ra n d f r a m e w o r ko ft h es y s t e mi nb r i e f b a s e do nt h i s ,t h ea r t i c l ei m p l e m e n t st h e f u n c t i o no fe a c hm o d u l e s :s e r i a lc o m m u n i c a t i o nm o d u l eu s i n gr s 2 3 2s e r i a l c o m m u n i c a t i o np r o t o c o l st oc o m p l e t et h ed a t ar e c e i v e ro nt h es p o t ;i n t r o d u c e s e m b e d d e dd a t a b a s es y s t e m ,g i v e st h ec h a r a c t e r i s t i ca n da r c h i t e c t u r eo fs q l i t e , a n dc a r r i e so u t d e v e l o p m e n ta n dt r a n s p l a n t a t i o n w i t h s q l i t e ;e l a b o r a t e s e m b e d d e dw e bs e r v e r sw o r k i n gp r i n c i p l ea n dt h ed e s i g nm e t h o d ,i n t r o d u c e st h e w o r k i n gp r i n c i p l ea n dc r i t e r i o no fc g l ,a l s oi m p l e m e n t st h ec g ia p p l i c a t i o n 哈尔滨理工大学工学硕士学位论文 t h ea r t i c l ea n a l y s i s e sa n di m p r o v e st h er e a l t i m ep e r f o r m a n c eo ft h e s y s t e m so p e r a t i o n c o m p a r e dw i t ht h er m s a n de d fs c h e d u l i n gs t r a t e g i e s ,i t p r e s e n t sa na d a p t a b l es c h e d u l i n gs t r a t e g yb a s e do nv a l u e w h e nt h er e a l - t i m e p r o c e s s i n g d a t ai sf u l lo re v e no v e r l o a d e d ,t h ea d a p t a b l es c h e d u l i n gs t r a t e g y b a s e do nv a l h es h o w st h ea d v a n t a g e si nt h i ss p e c i a lc i r c u m s t a n c e ,e f f e c t i v e l y i m p r o v i n gt h es y s t e mp e r f o r m a n c e f i n a l l y , t h ea r t i c l es u m m a r i z e s a l lt h ew o r k k e y w o r d se m b e d d e dl i n u x ,r e m o t em o n i t o r i n ga n dc o n t r o l l i n gs y s t e m , s q l i t e ,e m b e d d e dw e b s e r v e r 哈尔滨理工大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文基于嵌入式l i n u x 的远程监控 系统的设计和实现,是本人在导师指导下,在哈尔滨理工大学攻读硕士学位期 间独立进行研究工作所取得的成果。据本人所知,论文中除已注明部分外不包含 他人已发表或撰写过的研究成果。对本文研究工作做出贡献的个人和集体,均已 在文中以明确方式注明。本声明的法律结果将完全由本人承担。 作者签名: 弓铭 日期:枷秒年月_ t - 日 哈尔滨理工大学硕士学位论文使用授权书 基于嵌入式l i n u x 的远程监控系统的设计和实现系本人在哈尔滨理工大 学攻读硕士学位期间在导师指导下完成的硕士学位论文。本论文的研究成果归哈 尔滨理工大学所有,本论文的研究内容不得以其它单位的名义发表。本人完全了 解哈尔滨理工大学关于保存、使用学位论文的规定,同意学校保留并向有关部门 提交论文和电子版本,允许论文被查阅和借阅。本人授权哈尔滨理工大学可以采 用影印、缩印或其他复制手段保存论文,可以公布论文的全部或部分内容。 本学位论文属于 保密口,在年解密后适用授权书。 、: 不保密盯。 ( 请在以上相应方框内打4 ) 作者签名: 弓嵩 日期:伽g 年弓月心日 导师签名:喇胜群日期:2 纱牌? 月一日 哈尔滨理工大学工学硕士学位论文 第1 章绪论 1 1 课题研究的背景及目的 嵌入式系统是以应用为中心,以计算机技术为基础,其软硬件可裁剪,适 用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系 统。它主要由嵌入式处理器、相关支持硬件、嵌入式操作系统及应用软件组 成。由于嵌入式系统具有便利灵活、性价比高、嵌入性强、系统稳定等特点, 它已在生活、娱乐、军事、工业等各个领域中取得了广泛的应用。 通过嵌入式系统将监控系统中的现场设备接入i n t e m e t 就是嵌入式i n t e r n e t 。 在现有的嵌入式系统中,一类是功能类似p c 的嵌入式系统( 其实质是台式计算 机的超微型化) ,例如掌上电脑、信息家电、i n t e r n e t 接入终端设备等;另一类 是深度嵌入式系统,主要应用于对实时性和可靠性要求较高的环境中( 例如监 控系统) 。本文主要讨论面向监控应用的嵌入式系统。 远程监控系统是信息网络与工业控制网络结合的产物,它通过现场控制网 络、企业内部网和i n t e r n e t ,把分布于各地的智能仪表系统互联起来,实现控制 设备间的远程信息交互,完成远程监视与控制任务。其应用领域十分广阔,涉 及工业生产控制、航空航天、智能小区、网络化家电等各行各业,具有良好的 发展前景。该项技术的发展与成熟将会给人们的生产生活带来深远的影响。 本文的课题来源是与上海光机电子研究所的合作课题,设计一个基于激光 液位测量原理的便携式容量自动化监控装置,用于对油轮上所载油料进行实时 监测。 将w e b 技术应用到远程监控系统中,可以提供比传统远程监控更为强大的 功能。用户只需要通过普通的浏览器,就可以实现对远程设备的监视、控制、 诊断、测试和配置。并且系统具有界面简单、标准、技术成熟、传输数据量少 等优点。随着i n t e m e t 的普及,现代通信技术的进步,基于t c p i p 和 b r o w s e s e r v e r 架构的分布式监控技术也日趋成熟。借助以太网和i n t e m e t 技术, 把嵌入式系统连接至1 i n t e m e t 上,就可以方便、低廉地把信息传送到世界的任何 一个地方。互联网技术近年来发展迅速,将工业控制网络融入互连网,并对其 进行w e b 监控成为了近期的热点课题。可以预见,将w e b 技术应用于监控系统 将成为今后远程监控技术发展的主流方向之一。 哈尔滨理工大学工学硕士学位论文 1 2 国内外研究现状和水平 1 2 1 远程监控系统发展现状及发展趋势 传统的远程监控系统采用c s 模式,由服务器( s e r v e r ) 和客户端( c l i e n t ) 应用 程序组成,也称为“胖客户”模式晗1 。在这种模式下,数据存放在服务器上,应 用程序放在客户端计算机上。这样的系统虽然解决了数据共享等问题,但存在 着很多缺点,如需要开发专门的客户端应用程序,而且不同的系统需要不同的 客户端应用程序,操作风格不一致,可移植性差,难以维护,难以升级,系统 更新所需要的工作量非常大,而且能够处理的数据类型不易扩展。 随着网络应用系统的发展,传统c s 监控模式的缺点不断暴露出来,促使 b s 监控模式的产生和发展。b s 模式监控系统由浏览器、应用服务器和数据库 服务器组成,也称为“瘦客户”模式。数据信息和应用程序都放在服务器上,客 户端只需要安装通用的浏览器,其功能可以通过服务器上应用程序得到动态扩 展。采用b s 监控模式,无须开发各种各样的客户端应用程序,使客户端操作 界面得到统一,简洁美观,客户端不需要维护,系统的维护工作都集中在服务 器上,有利于系统的维护与升级,数据类型可以动态扩展。因此,b s 模式是 监控系统的发展方向。 基于w e b 方式是实现远程监控的一个趋势。随着信息技术和网络技术的发 展,i n t e m e t 在过去得到了飞速地发展,并围绕着i n t e m e t 出现了许多新的技术和 新的应用。w w w 系统就是在这种形势下,作为网络化信息服务的基础迅速地 发展起来的。i n t e r n e t 的全球连接的、分布的、动态的、多平台的交互式超媒体 信息系统。是一个基于它利用多种协议传输,能检索分布在世界各地服务器的 信息资源。在基于w e b 系统中,客户端使用通用的w e b 浏览器,通过i n t e m e t 对 生产现场进行监控。 1 2 2 嵌入式l in u x 国内外研究背景 嵌入式l i n u x 是近年来国际上的一个开发热点,国内外纷纷开展嵌入式 l i n u x 的研究,由美国新墨西哥理工大学开发的基于l i n u x 的嵌入式操作系统 r t l i n u x ,已成功应用于航天飞机的空间数据采集、科学仪器监控等领域口一1 。 由嵌入式l i n u x 行业的厂商l i n e 推出的e m b e d i x ,提供了超过2 5 种的l i n u x 哈尔滨理工大学工学硕士学位论文 系统服务,德国m o n t a v i s t a 公司推出的m o n t a v i s t al i n u x 也己经在工业控制等 领域得到了广泛的应用。在国内,中软总公司推出的嵌入式l i n u x 3 4 也己广 泛应用于工业控制领域。红旗l i n u x 在工控盒信息家电中也得到了应用。可 见,无论国内外,嵌入式l i n u x 的研究已广泛展开,己经有成熟的产品推出, 并有了广泛的应用。 1 2 3 嵌入式数据库的发展现状和水平 嵌入式数据库技术目前已经从研究领域向广泛的应用领域发展,各种嵌入 式移动数据库产品纷纷涌现1 。尤其是对移动数据处理和管理需求的不断提 高,紧密结合各种智能设备的嵌入式移动数据库技术已经得到了学术界、工业 界、军事领域、民用部门等各方面的重视,不断实用化。 目前,嵌入式数据库的开发成为国内外嵌入式系统开发中的一个热点,一 方面,随着嵌入式设备硬件处理能力的越来越强,对数据处理和存储的要求越 来越高,并且数据库作为一个有效的工具,可以大幅度的提高嵌入式设备的工 作效率和工作能力。嵌入式数据库同普通数据库相比,嵌入式数据库就是一种 具备了基本数据库特性的数据文件。嵌入式数据库通常与操作系统和具体应用 集成在一起,无须独立运行数据库引擎,由程序直接调用相应的a p i 实现对数 据的存取操作。嵌入式数据库与其它数据库产品的区别是,前者是程序驱动 式,而后者是引擎响应式。嵌入式数据库的一个很重要的特点是它们的体积非 常小,编译后的产品也不过几十k b ,在一些移动设备上也极具竞争力。 1 2 4 嵌入式w e bs e r v e r 的发展现状和水平 越来越多的网络通信设备甚至测试仪器都已经实现内置的嵌入式w e b 服务 器,用户、操作人员可以直接使用w e b 浏览器通过设备的以太网口或者其他网 络端口来远程访问内置w e b 服务器的专用网页,从而实现对设备运行状态的监 测和运行参数的配置等功能, 。一些商业性的嵌入式w e b 服务器软件也已经应 用于嵌入式系统开发,比如:w i n d e r r i v e r 公司已经提供商业性的嵌入式w e b 服 务器软件w i n dw e b s e r v e r 用于v x w o r k 的嵌入式应用中a l l e g r o 公司的r o m p a g e r 是一个免特许权费用,价格适合的嵌入式w e b 服务器包,使客户可以使用通用 的w e b 浏览器来管理和控制网络设备。嵌入式w e bs e r v e r 是嵌入式i n t e m e t 的重 要组成部分,要实现嵌入式i n t e m e t ,嵌入式设备中就必然要加入功能强大、性 能稳定、体积合适的嵌入式w e bs e r v e r 。而上面提到的几种主流的w e bs e r v e r 哈尔滨理工大学工学硕士学位论文 所占空间太大,嵌入式系统所需要的是个在设计上尽量减小h 1 v r p 厂r c p 佃协 议栈而不失一般标准性的“瘦服务器”。 通过嵌入式i n t e r n e t 系统组建监控系统,可以利用嵌入式w e b 服务器将参 数显示和监控等功能均通过网页的统一界面呈现给客户。这样,客户机上不需 运行专用的监控软件,只需运行通用的浏览器来调用分散在各个受控设备中的 嵌入式w e b 服务器上的监控参数显示页面,就能达到监控设备的目的。当监 控系统扩展时,客户机上软件并不需作任何修改,从而大大提高了监控系统的易 扩展性计算机监控系统是当代计算机技术与自动控制技术结合的产物,而嵌入 式i n t e m e t 已经成为其重要的组成部分和技术热点。嵌入式i n t e r n e t 系统满足了 现代监控系统在系统可扩展性、分布式和实时性等方面的技术性要求,不仅成 为计算机学科的重要门类,而且是实现国家工业生产自动化、优质高产低耗、 提高企业经济效益的重要技术手段。 1 3 本文研究的主要内容 本课题通过设计一个基于激光液位测量原理的便携式容量自动化计量装 置,全面和系统地分析、综述远程监控系统及相关应用领域的现状,针对传统 工程监控系统在传统应用中出现的各种问题,构建了一种新型的基于以太网和 数据库的嵌入式远程监控系统,对其进行了设计与实现。并且针对l i n u x 系统 的内核太大,实时性不足的情况,通过一个改进的调度算法,提高嵌入式 l i n u x 的实时性能。 本文的主要工作包括以下几个方面: 1 。了解a r m 处理器及基于此处理器的外围器件硬件系统。 2 熟悉嵌入式l i n u x 操作系统,建立交叉编译环境,进行b o o t l o a d e r 的移 植、嵌入式l i n u x 操作系统内核的初步定制与移植,建立嵌入式系统的开发平 厶 口o 3 基于嵌入式l i n u x 的远程监控系统的总体设计,并对串口通信模块、嵌 入式数据库及嵌入式w e b 进行了设计及实现。 4 对嵌入式系统的运行性能进行分析,并提出一种可适应性的基于价值的 调度算法,增强嵌入式l i n u x 系统实时性。 哈尔滨理工大学工学硕士学位论文 第2 章嵌入式远程监控系统的开发环境设计 由于嵌入式系统是为特定的需要而设计,并且要考虑到空间、成本、存 储、带宽等限制,嵌入式系统的开发方法与一般的计算机软件有所不同。因此 在开发这个软件之前,必须建立起嵌入式系统的开发环境。 2 1 嵌入式系统开发平台的硬件模块电路设计 硬件是嵌入式系统物理基础,它提供软件运行平台和通信接口。本节主要 介绍硬件系统逻辑、硬件系统主要芯片;在深入研究硬件芯片基础上设计了硬 件电路,搭建了系统所需网络监控平台。 要进行嵌入式l i n u x 系统的开发和应用研究,开发平台也是一个不可小视 的问题睛1 。开发者可以自己设计硬件平台,然后再挑选合适版本的嵌入式l i n u x 系统,将其移植到自己的硬件平台上。本文使用现成的开发平台,这样就可以 将精力集中在应用的开发上。 2 1 1s 3 c 2 4 1 0c p u 结构 我们已经选择了韩国s a m s u n g 公司推出的1 6 3 2 位r i s c 处理器 $ 3 c 2 4 1 0 a 归1 ,它是一个主频高达2 0 3 m h z ,基于a r m 9 2 0 t 内核的高性能微处理 器,独立的1 6 k b 指令c a c h e 和1 6 k b 数据c a c h e ,m m u 虚拟内存管理单元,使得 程序运行以及数据存储更加高效,并可以支持w i n c e 。n e t ,l i l l u x 和u c o s i i 等 多种业内主流的操作系统。同样它还采用了一种叫做a d v a n c e dm i c r o c o n t r o l l e r b u sa r c h i t e c t u r e ( a m b a ) 新型总线结构。作为系统电路扩展的核心主要结构如 下: 1 1 8 v 内部电压;2 5 v 3 3 v 存储器电压;3 3 v 外部电压;1 6 k b 的指令 c a c h e 和1 6 k b 数据c a c h e ; 2 外部存储控制器( s d 黜、m 控制器以及芯片选择逻辑单元) ; 3 m m u 管理单元; 4 l c d 控制器,触摸屏接口; 5 支持8 个最大1 2 8 m 字节b a n k s ,地址空间达1 g ; 6 1 1 7 个通用i 0 口;2 4 个外部中断; 7 3 个u a r t ( i r d a l 0 ,1 6 位t xf i f o ,和1 6 位r xf i f o ) 2 个s p i ; 哈尔滨理工大学工学硕士学位论文 8 8 通道1 0 位a d c 和触摸屏接口; 9 还有d m a ,r t c ,p u 。等接口; 其内部结构框图如图2 1 所示: 图2 - 1 $ 3 c 2 4 1 0c p u 内部结构 f i g 2 1i n t e r n a ls t r u c t u r eo f $ 3 c 2 4 1 0c p u 2 1 2 网络接口芯片c s 8 9 0 0 a 及接口电路 任何系统要实现网络功能都需要网络接口芯片连接计算机和传输媒体。通 过网络芯片将测控数据帧转化为i n t e r n e t 数字信号,这是嵌入式系统同i n t e m e t 互 联网接口通道。$ 3 c 4 4 8 0 、$ 3 c 2 4 1 0 等c p u 本身并没有网络接口,但是,通过 扩展网络接口的模式,我们提供一个c s 8 9 0 0 a 1 0 m 的网络接口。为兼容其他 c p u 型号,主板上还设计了一个与m i i 接口对接的网络芯片r t l 8 2 0 1 ,为 1 0 m 1 0 0 m 兼容。 c s 8 9 0 0 a 是由美国c i r r u sl o g i c 公司生产的以太网控制器,由于其优良 的性能、低功耗及低廉的价格,使其在市场上1 0 m b p s 嵌入式网络应用中占有 相当的比例。我们采用c s 8 9 0 0 a 芯片,它是支持1 0 b a s e t 以太网接口的双向网 络芯片,有完善的以太网电路必须的数、模电路,能很好的完成以太网数据的 传输和接收;采用p a c k e t p a g e 结构操作i 0 n 、存储区、d m a 服务都相当方便, 在程序中将存储器地址赋予p a c k e t p a g ep o i n t e r ,通过p a c k e t p a g ed a t a 口就可以 对存储器操作;芯片采用t q f p 封装,表面积只有1 0 c m = ,特别适合嵌入式系统 要求。其内部结构框图如下图2 2 所示。 哈尔滨理工大学工学硕士学位论文 e e p r o m 控制器 存储器 管理 m a c 驱动器 时l l e d 钟il 控制器 编翌篓二 逻辑 圈国 图2 2c s 8 9 0 0 a 内部结构 f i g 2 - 2i n t e r n a ls t r u c t u r eo fc s 8 9 0 0 a 10 b a s e - _ r t x 过滤传输器 1o b a s e t r x 过滤接收器 a u l 传输器 a u l 接收器 2 1 3f l a s h 接口电路 本系统选用f l a s h 作为程序存储器。f l a s h 是一种可带电在线进行修改,掉 电后数据不丢失的新型存储器,几乎同时具有所有存储器的优点:功耗低、容 量大、价格低、密度高、不挥发、可更新等。f l a s h 存储器通常用于存放程序代 码,常量表以及一些在系统掉电后需要保存的重要数据等。由于f l a s h 所记忆的 信息不易丢失,因此特别适合应用于嵌入式系统。f l a s h 主要用于替代r o m , 必要时也可以存储部分重要数据。本系统采用a m d 公司的n o rf l a s h ,容量2 4 m 兼容。f l a s h 的地址线a 1 1 2 3 接处理器的地址线l a d d r 1 2 3 】,a o 接地表示数 据位是1 6 位。f l a s h 的1 6 位数据线接处理器的低1 6 位,f l a s h 由处理器的片选信 号n g c s o 选通。芯片$ 3 c 2 4 1 0 与f l a s h 的接口框图如图2 - 3 所示: 哈尔滨理工大学工学硕士学位论文 o m 1 :0 】 a d d r l a d d r 2 3 a d d r 2 4 g p a 9 d a t a o d a t a l5 n r e s e t s 3 c 2 4 l o n o e n w e n g c s o 2 1 4 串行接口电路 3 3 v g n d g n d 3 3 v n b y t e a o a 1 a 2 3 a 2 4 d q 0 一d q l 5 n r p n o e a m 2 9 l v l 6 0 d b n w e n c e 0 n c e l n c e 2 v p e n 图2 3 $ 3 c 2 4 1 0 与f l a s h 的接口 f i g 2 3 $ 3 c 2 4 1 0i n t e r f a c ew i t hf l a s h s 3 c 2 4 1 0 的u a r t 提供3 个独立通道的异步串行输入输出口,每一个都可工 作在中断模式和d m a 模式下如果用系统时钟,u a r t 可支持达2 3 0 4 k b p s 的位 速率:如果用外部设备通过u c l k 提供的时钟,那么u a r t 可工作在更高的速 率3 个u a r t 都可用作红外线接口s 3 c 2 4 1 0 可以很方便地用u a r t 实现r s 一2 3 2 串 口功能,但s 3 c 2 4 1 0 的供电电压为1 8 v 3 3 v ,所以i o 口的最大逻辑电平也是 3 3 v ,要实现r s 2 3 2 串口功能还要加电平转换电路,我们用m a x 2 3 2 来实现这 一功能。 m a x 2 3 2 单+ 3 3 v 电源供电,仅需外接几个电容即可完成从,n r i c m o s 电 平到r s 2 3 2 电平的转换连接图如图所示,r s 2 3 2 工作在3 线制状态下。r s 2 3 2 采取不平衡传输方式,即所谓单端通讯。收、发端的数据信号是相对于信号 地。由于r s 2 3 2 c 标准所定义的高、低电平信号与s 3 c 2 4 1 0 a 系统的l v t t l 电 路所定义的高、低电平信号完全不同,l v t t l 的标准逻辑”1 ”对应2 3 3 v 电 平,标准逻辑o 对应0 0 4 v 电平,而r s 一2 3 2 c 标准采用负逻辑方式,标准逻辑 i l l ,对应3 1 5 v 电平,标准逻辑+ o 对应+ 3 + 1 5 v 电平。所以在两者之间通信需 要进行电平转换,目前常用的电平转换电路为m a x 2 3 2 。$ 3 c 2 4 1 0 的u a r t 的 哈尔滨理工大学工学硕士学位论文 接口电路图如图2 4 所示: 图2 - 4u a r t 接口电路图 f i g 2 4u a r t i n t e r f a c ec i r c u i t 2 2 嵌入式l i n u x 系统开发平台的软件环境设计 由于嵌入式系统自身的特殊性,注定了它自身所具有的资源和内存空间都 是十分有限,不可能象开发p c 软件那样在其上运行所有的开发工具,而且很多 嵌入式系统没有像显示器那样的输出设备,为此我们需要在p c 机上建立针对目 标平台的交叉开发调试环境,用于编译、链接、运行、调试目标系统上的内核 和应用程序。生成的可执行目标代码通过串口或者以太网口下载到目标机执 行。 2 2 1 选择l i n u x 作为嵌入式操作系统的原因 l i n u x 具有相当多的优点,它的内核稳定、功能强大,可裁减和低成本的 特性非常适合嵌入式应用n 训。但是l i n u x 最初并不是为嵌入式系统设计的, l i n u x 中断封锁时间过长,非抢占式的内核,耗尽式的、机会均等的进程调度 策略使得其不具有实时性,且内核体积较大。因此,想要把l i n u x 用于嵌入式 系统,必须修改l i n u x 使其嵌入式化。主要集中在两个方面:一是体积,二是 实时性。针对这两个方面,国外一些公司和研究机构开发出了各具特色的嵌入 式l i n u x 版本。在实时性方面,最为有名的嵌入式l i n u x 版本有r t 1 i n u x 和 k u r t l i n u x 等。在减t 、l i n u x 体积方面,则以美国网虎国际公司最为突出,已 经成功地将l i n u x 剪裁到1 4 3 k b 大小。 为了使嵌入式系统的丌发更加方便和快捷,需要有专门负责管理存储器分 哈尔滨理工大学工学硕十学位论文 配、中断处理、任务调度等功能的软件模块,这就是嵌入式操作系统。嵌入式 操作系统是用来支持嵌入式应用的系统软件,是嵌入式系统极为重要的组成部 分,通常包括与硬件相关的底层驱动程序、系统内核、设备驱动接口、通信协 议、图形用户界面( o u o 等。一个嵌入式l i n u x 系统从软件的角度看通常可以分 为四个层次,如图2 5 所示: 图2 5 嵌入式l i n u x 系统组成 f i g 2 - 5e m b e d d e dl i n u xs y s t e mc o m p o n e n t s 1 引导加载程序包括固化在固件中的启动代码,和b o o t l o a d e r 两大部分, 其中固件中的启动代码是可选项,功能强大的b o o t l o a d e r 可完成其工作。 2 l i n u x 内核特定于嵌入式板子的定制内核以及内核的启动参数。 3 文件系统包括跟文件系统和建立于f l a s h 内存设备之上文件系统。通常 用r a m d i s k 来作为跟文件系统。 4 用户应用程序特定于用户的应用程序。有时在用户应用程序和内核层 之间可能还会包括一个嵌入式图形用户界面,通常我们采用m i n i g u i 或者q t 作 为我们的图形用户界面。 2 2 2 建立交叉编译环境 由于大多数嵌入式l i n u x 开发系统存储容量有限,在裁减和定s l i n u x ,运 用于嵌入式系统前,通常需要在p c 机上建立一个用于目标机的交叉编译环境, 也就是将各种二进制- 1 - 具程序集成为工具链,其中包括如g n u 的链接器 ( 1 d ) ,g n u 的编译器( a s ) ,a t ( 产生修改和解开一个存档文件) 、c 编译器( g c c ) 以及c 链接库( g l i b c ) 。 简单地说,交叉编译就是在一个平台上牛成在另一个平台上执行的代码。 这罩的平台包括体系结构和操作系统。同一体系结构可以运行不同的操作系 哈尔滨理工大学工学硕士学位论文 统,同样,同一操作系统也可以在不同的体系结构上运行。交叉编译环境建立 在宿主机上,对应的开发板叫目标板。目标板用于运行操作系统和目标系统应 用软件,而目标板所用到的操作系统的内核编译、应用程序的开发和调试则需 要通过宿主机来完成,一般是汇编和编译形成可执行的二进制代码,然后把可 执行程序下载到目标板上运行。双方之间一般通过串口、并口或以太网接口建 立连接关系。 宿主机和目标板上的处理器一般都不相同,在这里,宿主机上运行的是 c y g w i n ,而目标板上为$ 3 c 2 4 1 0 a 开发平台,运行嵌入式l i n u x ,所以我们编写 程序需要使用针对处理器特点的编译器才能生成在相应平台上可运行的代码, 然后再利用交叉编译调试工具编译链接生成可执行代码,最后向目标平台移 植。 目标板上的终端通常被重定向到串口,在宿主机上输出。目标板上的程序 都是烧写到f 1 a s h 的,这包括引导代码、l i n u x 内核、文件系统、应用程序及其 他数据等。 2 2 3 配置和编译b o o t l o a d e r 嵌入式系统的初始化、加载过程和p c 机在原理上是一样的,因此在一个 嵌入式系统中需要设计者提供一个与b i o s 功能相类似的软件通常叫做 b o o t l o a d e r ( 弓l 导加载程序) ,是系统上电后运行的第一段代码n2 。一般它只在系 统启动时运行非常短的时间,但对于嵌入式系统来说,这是一个非常重要的系 统组成部分。它有如下的作用:把内核从f l a s h 复制到r a m ,然后启动它;初 始化硬件;下载程序并写入f l a s h ( 一般都是先通过串口或者网口先把内核下载 到r a m 中,然后写入f l a s h 中) ;检测目标板( b o o t l o a d e r 会有一些简单的代 码用以测试目标板硬件的好坏。 v i v i 是韩国m i z i 公司开发的b o o f l o a d e r ,适用于a r m 9 处理器。本设计中使 用的就是该b o o t l o a d e r 。v i v i 有启动加载模式和下载模式两种工作模式,启动加 载模式可以在一段时间后自行启动l i n u x 内核,这是v i v i 的默认模式。在下载模 式下,v i v i 为用户提供一个命令行接口,通过该接口可以使用v i v i 提供的一些命 令来设置参数和启动系统等。 编译时,要先指定m a k e f i l e 文件中的l i n u xi n c l u d ed i r 和c i 的s s c o m p i l e ,否则会报错。配置和编译v i v i 使用的命令为:m a k em e n u c o n f i g ,根 据自己的需要手动进行适当配置,配置完成后保存配置。执行m a k e 命令,如果 哈尔滨理工大学工学硕士学位论文 编译顺利,会在当前目录下生成v i v i 的二进制文件。 2 2 4l i n u x 内核简析及编译 l i n u x 内核是整个l i n u x 系统的灵魂,它负责整个系统的内存管理、进程调 度和文件管理“3 1 。l i n u x 内核与大部分u n i x 内核一样是单内核体系结构的,即 它是由几个逻辑功能上不同的部分组合而成的大程序。单内核结构可以动态加 载和卸载模块( m o d u l e ) ,能够根据需要定制内核映像的尺寸,并且具有很大灵 活性,不需要重新编译内核和引导就能检验新的内核组件,方便用户构筑自己 的个人内核,这个特性对于嵌入式是非常有好处的。l i n u x 内核的容量并不 大,一般一个功能比较全面的内核也不会超过1 m 。l i n u x 内核由5 个主要的子 系统组成,分别为:进程调度、内存管理、虚拟文件系统、网络接口和进程间 通信。结构如图2 - 6 所示: 图2 6l i n u x 内核结构图 f i g 2 - 6s t r u c t u r eo ft h el i n u xk e r n e l l i n u x 内核有着自己的体系结构,在图2 - 6 中,进程调度、内存管理和文件 子系统是其中最基本的。在图2 - 6 中,可以把虚线部分看做l i n u x 内核的单内核 结构。用户进程可以直接通过系统调用或者函数库来访问内核资源。丁f 是因为 l i n u x 有这样的内核结构,因此在修改内核的时候必须保证每个子系统之间的 协调。比如:如果修改了l i n u x 默认的e x t 2 文件系统,则至少要考虑到每个 哈尔滨理工大学工学硕士学位论文 进程都有可能要打开文件列表,进程创建、运行和结束的一系列过程都可能与 文件系统有关,因此也要修改相应的代码。另外内存管理与交换文件有关,执 行交换功能的内存子系统也需要相应的改动。 在构建嵌入式l i n u x 的时候,考虑到应用的功能单一性,主要是对其做功 能上的裁减核优化。随着l i n u x 内核版本的不断升级,功能日趋完善,代码容 量也在增加,这就更需要对其进行精简。 重新编译内核,主要通过下列步骤完成。 1 初始化环境在l i n u x 安装和运行期间,系统的u s r s r c l i n u x 目录可能产 生一些文件,为防止这些文件影响内核的编译,需要使用下面的命令。# m a k e c l e a n :清除以前编译内核运行所产生的所有目标文件、模块文件、核心以及一 些临时文件等。执行后不产生任何文件。另外,如果要使系统内核的配置文 件( c o n f i g ) 恢复到默认值,可以运行m a k er m p r o p e r a 。 2 配置核心要对核心的特性以及支持的硬件类型进行详细配置,可以使 用下列命令之一。# m a k ec o n f i g 、# m a k ex c o n f i g 、# m a k em e n u c o n f i g 。命令 m a k ec o n f i g 是最传统的配置方式,需要在终端上以文本行的形式逐行回答 y e s n o 选项。命令执行后产生两个c o r t f i g 文件,保存有系统配置信息。命令 m a k em e n u c o n f i g 以文本窗口的形式进行核心配置,具有比较友善的人机界面, 现在绝大多数都用此方式配置内核。命令m a k ex c o n f i g 与m a k em e n u c o n f i g j f | 同,但只在x w i n d o w 模式下运行。 3 编译内核配置内核以后就可用如下方法之一编译核心:# m a k e z l m a g e ,此命令将在a r c h $ ( a r c h ) b o o t 目录( 这里的$ ( a r c h ) 代表处理器体系 结构) 下产生名为z i m a g e 的内核。 4 应用内核在a r c h $ ( a r c h ) b o o t 目录下可以获得编译后的核心。 2 2 5 加载文件系统 在现代计算机系统中,程序和数据一般都是以文件的形式存储,因此必须 实现将这些文件映射到实际物理存储空间,并提供相应操作接口,这就是文件 系统。文件系统为用户提供结构化格式存储和检索信息的方法,负责文件存 取,共享的管理,保证数据的安全性和一致性n 钉。 许多嵌入式系统没有磁盘或者文件系统,l i n u x 没有它们同样可以正常运 行。在这种情况下,应用程序代码必须整合到内核中,与内核一起编译并在系 统引导时作为一个映像文件加载。显然,这种系统的灵活性比较差,只能满足 哈尔滨理工大学工学硕士学位论文 一些功能比较简单的嵌入式系统的要求。

温馨提示

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

评论

0/150

提交评论