(控制理论与控制工程专业论文)基于linux操作系统的嵌入式工业控制器的研究与开发.pdf_第1页
(控制理论与控制工程专业论文)基于linux操作系统的嵌入式工业控制器的研究与开发.pdf_第2页
(控制理论与控制工程专业论文)基于linux操作系统的嵌入式工业控制器的研究与开发.pdf_第3页
(控制理论与控制工程专业论文)基于linux操作系统的嵌入式工业控制器的研究与开发.pdf_第4页
(控制理论与控制工程专业论文)基于linux操作系统的嵌入式工业控制器的研究与开发.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(控制理论与控制工程专业论文)基于linux操作系统的嵌入式工业控制器的研究与开发.pdf.pdf 免费下载

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

文档简介

华北电力大学硕士学位论文 摘要 嵌入式系统具有体积小、性能强、功耗低、可靠性高以及面向行业应用的突出 特征,目前已经广泛应用于军事国防、消费电子、网络通信、工业控制等各个领域。 嵌入式1 i n u x 是将普通1 i n u x 操作系统进行裁剪、修改,使之能在嵌入式计算机上 运行的一种操作系统。由于具有l i n u x 和嵌入式系统的优点,嵌入式1 i n u x 系统有 着巨大的市场前景。 本论文的研究是在开发的a t 9 1 r m 9 2 0 0 的嵌入式工业控制器硬件基础上,对a r m 体系结构进行了归纳,介绍了基于a t 9 l r m 9 2 0 0 的嵌入式工业控制器的资源,进行 了启动引导代码u - b o o t 和l i n u x 内核的启动分析以及移植到硬件平台上的整个过 程开发,实现了控制器的基本系统功能。并给出了嵌入式l i n u x 控制器a d 等多个 i o 接口驱动程序的开发。基本实现了用于风力发电机组控制的嵌入式工业控制器 的软件运行环境。 关键词:嵌入式系统、a r m 、li n u x 、内核移植、工业控制器 a b s t r a c t b e c a u s eo ft h ee m b e d d e ds y s t e m so u t s t a n d i n gc h a r a c t e r i s t i c so fs m a l l s i z e ,h i g l l p e r f o r m a n c e ,l o wc o s t ,h i 曲r e l i a b i l i t ya n dw e l lp r a c t i c a l i t y , i th a sb e e na p p l i e di nm a n yf i e l d s s u c ha sm i l i t a r y , e l e c t r o n i c s ,c o m m u n i c m i o n ,i n d u s t r i a lc o n t r o le t c e m b e d d e dl i n i xi sa n o p e r a t i o ns y s t e mw h i c hi sc u to f fa n dm o d i f i e df r o mc o m m o nl i n u x ,a n dw h i c hc a nr u no n e m b e d d e dc o m p u t e rs y s t e m s i n c ei th a st h ea d v a n t a g e sf r o mb o t hl i n u xa n de m b e d d e d s y s t e m ,e m b e d d e dl i n u xh a sl a r g em a r k e tp r o s p e c t i nt h i sp a p e r , t h es t u d yi sb a s e do nt h ea t 91r m 9 2 0 0e m b e d d e di n d u s t r i a lc o n t r o l l e r t h e a r ma r c h i t e c t u r ea l es u m m a r i z e da n dt h er e s o u r c e so fe m b e d d e di n d u s t r i a lc o n t r o l l e rb a s e d o na t 91r m 9 2 0 0i si n t r o d u c e di nt h ef i r s t t h e n ,g i v eo u ts t a r t - u pg u i d ec o d e ( u b o o t ) a n d l i n u xk e m e l ss t a r t - u pa n a l y s i s ,a l s op o r t i n gt h e mi n t ot h eh a r d w a r ep l a t f o r ma n dt h eb a s i c s y s t e mf u n c t i o n si sa c h i e v e d f i n a l l y , t h ee m b e d d e dl i n u xd r i v e rd e v e l o p m e n tm e t h o d si s i n t r o d u c e db ya ne x a m p l eo faa dm o d u l e t h u s ,t h es o f t w a r ee n v i r o n m e n to ft h ee m b e d d e d i n d u s t r yc o n t r o l l e rw h i c hw i l lb eu s e di nc o n t r o lo fw i n dp o w e rg e n e r a t o rh a sb e e na c h i e v e d j i nj i e ( c o n t r o ls c i e n c ea n dc o n t r o le n g i n e e r i n g ) d i r e c t e db yp r o f l vy u e g a n g k e yw o r d s :e m b e d d e ds y s t e m ,a r m ,l i n u x ,k e r n e l st r a n s p l a n t i o n ,i n d u s t r yc o n t r o l l e r 华北电力大学硕士学位论文 摘要 嵌入式系统具有体积小、性能强、功耗低、可靠性高以及面向行业应用的突出 特征,目前已经广泛应用于军事国防、消费电子、网络通信、工业控制等各个领域。 嵌入式1 i n u x 是将普通1 i n u x 操作系统进行裁剪、修改,使之能在嵌入式计算机上 运行的一种操作系统。由于具有l i n u x 和嵌入式系统的优点,嵌入式1 i n u x 系统有 着巨大的市场前景。 本论文的研究是在开发的a t 9 1 r m 9 2 0 0 的嵌入式工业控制器硬件基础上,对a r m 体系结构进行了归纳,介绍了基于a t 9 1 r m 9 2 0 0 的嵌入式工业控制器的资源,进行 了启动引导代码u - b o o t 和l i n u x 内核的启动分析以及移植到硬件平台上的整个过 程开发,实现了控制器的基本系统功能。并给出了嵌入式l i n u x 控制器a d 等多个 i o 接口驱动程序的开发。基本实现了用于风力发电机组控制的嵌入式工业控制器 的软件运行环境。 关键词:嵌入式系统、a r m 、li n u x 、内核移植、工业控制器 a b s t r a c t b e c a u s eo ft h ee m b e d d e ds y s t e m so u t s t a n d i n gc h a r a c t e r i s t i c so fs m a l l s i z e ,h i g l l p e r f o r m a n c e ,l o wc o s t ,h i 曲r e l i a b i l i t ya n dw e l lp r a c t i c a l i t y , i th a sb e e na p p l i e di nm a n yf i e l d s s u c ha sm i l i t a r y , e l e c t r o n i c s ,c o m m u n i c m i o n ,i n d u s t r i a lc o n t r o le t c e m b e d d e dl i n i xi sa n o p e r a t i o ns y s t e mw h i c hi sc u to f fa n dm o d i f i e df r o mc o m m o nl i n u x ,a n dw h i c hc a nr u no n e m b e d d e dc o m p u t e rs y s t e m s i n c ei th a st h ea d v a n t a g e sf r o mb o t hl i n u xa n de m b e d d e d s y s t e m ,e m b e d d e dl i n u xh a sl a r g em a r k e tp r o s p e c t i nt h i sp a p e r , t h es t u d yi sb a s e do nt h ea t 91r m 9 2 0 0e m b e d d e di n d u s t r i a lc o n t r o l l e r t h e a r ma r c h i t e c t u r ea l es u m m a r i z e da n dt h er e s o u r c e so fe m b e d d e di n d u s t r i a lc o n t r o l l e rb a s e d o na t 91r m 9 2 0 0i si n t r o d u c e di nt h ef i r s t t h e n ,g i v eo u ts t a r t - u pg u i d ec o d e ( u b o o t ) a n d l i n u xk e m e l ss t a r t - u pa n a l y s i s ,a l s op o r t i n gt h e mi n t ot h eh a r d w a r ep l a t f o r ma n dt h eb a s i c s y s t e mf u n c t i o n si sa c h i e v e d f i n a l l y , t h ee m b e d d e dl i n u xd r i v e rd e v e l o p m e n tm e t h o d si s i n t r o d u c e db ya ne x a m p l eo faa dm o d u l e t h u s ,t h es o f t w a r ee n v i r o n m e n to ft h ee m b e d d e d i n d u s t r yc o n t r o l l e rw h i c hw i l lb eu s e di nc o n t r o lo fw i n dp o w e rg e n e r a t o rh a sb e e na c h i e v e d j i nj i e ( c o n t r o ls c i e n c ea n dc o n t r o le n g i n e e r i n g ) d i r e c t e db yp r o f l vy u e g a n g k e yw o r d s :e m b e d d e ds y s t e m ,a r m ,l i n u x ,k e r n e l st r a n s p l a n t i o n ,i n d u s t r yc o n t r o l l e r 声明尸叫 本人郑重声明:此处所提交的硕士学位论文基于l i n u x 操作系统的嵌入式工 业控制器的研究与开发,是本人在华北电力大学攻读硕士学位期间,在导师指导 下进行的研究工作和取得的研究成果。据本人所知,除了文中特别加以标注和致谢 之处外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得华北 电力大学或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本 研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 学位论文作者签名:盘查: 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权 保管、并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或 其它复制手段复制并保存学位论文;学校可允许学位论文被查阅或借阅;学校 可以学术交流为目的,复制赠送和交换学位论文;同意学校可以用不同方式在不同 媒体上发表、传播学位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名:筮: 卵 m燃却逝4 华北电力大学硕士论文 1 1 选题背景和研究意义 第一章绪论 随着电子技术的快速发展,特别是大规模集成电路的产生而出现的微型机,使 现代科学研究得到了质的飞跃,而嵌入式微控制器技术的出现则是给现代工业控制 领域带来了一次新的技术革命。由嵌入式微控制器组成的系统,最明显的优势就是 可以嵌入到任何微型或小型仪器、设备中。 。 嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、 适应应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 嵌入式系统是将先进的计算机技术、半导体技术、电子技术和各个行业的具体应用 相结合后的产物,这一点就决定了他必然是一个技术密集、资金密集、高度分散、 不断创新的知识集成系统。嵌入式计算机的外部设备中就包含了多个嵌入式微处理 器,如键盘、硬盘、显示器、网卡、声卡等均是由嵌入式处理器控制的。现在嵌入 式系统在工业领域创造了巨大的价值,嵌入式计算机不仅在民品上而且在军事装备 上也得到了广泛地应用。 为了适应各方面的需求,嵌入式微处理器体系结构经历了一个从c i s c 到 r i s c ,从4 位、8 位、1 6 位到3 2 位、6 4 位,寻址空间从6 4 k b 到3 2 m b 甚至 更大,处理速度从0 1 m i p s 到2 0 0 0 m i p s ,常用封装从8 引脚到1 4 4 引脚的过程。 微处理器的功耗也有了明显降低,其集成度进一步提高,涌现了大量的s o c ( s y s t e m o nc h i p ) 系统。 目前,嵌入式系统已广泛应用于信息家电、移动通信、手持信息设备以及工业 控制等领域。嵌入式系统无处不在,它几乎包括了我们周围的所有电器设备:掌上 p d a 、上网手机、移动计算设备、游戏机、打印机、扫描仪、电视机顶盒、汽车、 微波炉等家庭自动化系统、医疗仪器、电梯、安全系统、立体音响、自动售货机、 自动取款机等。 中国有世界上最大的家用电子产品消费市场和制造业,彩电、v c d 、游戏机、 学习机的拥有量居世界第一。随着消费品位的不断提高,人们对家电的灵活性和互 动性提出了更高的要求,即智能化和网络化在家电中必不可少;社会开放的扩大和 人际交往的频繁,使得p d a 等移动设备成为今后个人数据通信和事务处理的最佳 选择之一;此外,现代化的医疗、测控仪器和机电产品等也需要有嵌入式系统的支 持。以上这些需求都极大的刺激了嵌入式系统的发展和产业化进程。 。当前,能源、环境已经成为人类生存和发展所要解决的紧迫问题。常规能源以 华北电力大学硕士论文 煤、石油、天然气为主,它不仅资源有限,而且造成了严重的大气污染。因此,对 可再生能源的开发利用,特别是对风能的开发利用,已受到世界各国的高度重视。 近2 0 年来,发达国家在风力发电技术领域已取得巨大的成就:并网运行的风力发 电机组单机容量从最初的数十千瓦级已发展到兆瓦级;控制方式从基本单一的定桨 距失速控制向全桨叶变距和变速恒频发展,预计在最近的几年内将推出智能型风力 发电机组;运行可靠性从2 0 世纪8 0 年代初的5 0 提高到9 8 以上,并且在风电场 运行的风力发电机组全部可以实现集中控制和远程控制乜3 。相比之下,我国在风力 发电领域与发达国家还有不小差距,尤其是在作为核心技术的风力发电机组的设 计、制造和控制上差距还相当明显,缺乏具有自主知识产权的产品。 有鉴于此,本课题期望能在前人的基础上实现基于1 i n u x 操作系统的应用于风 力发电机组控制的工业控制器,实现装备的国产化。考虑到控制对象的复杂性和对 实时性要求的严格性,控制器选取了a r m 9 系列的a t 9 1 r m 9 2 0 0 处理器和开源的l i n u x 操作系统进行设计与实现。在硬件方面充分利用了a t 9 1 r m 9 2 0 0 的高性能、低功耗、 低成本的优点来扩展控制器的数据输入输出接口,并采用高速电路板的设计方法搭 建硬件系统。软件上,采用了l i n u x 作为控制器的操作系统,成为各种应用软件运 行的平台。本课题的工业控制器具有以下主要特点:高运算速度,低功耗,较大的 存储空间;良好的通信能力,支持多种通信硬件和数据传输协议,包括r s 2 3 2 ,r s 4 8 5 串行数据端口和网络通讯协议;强大的开关量和模拟量采集能力,支持1 0 路d i , 1 0 路d o ,1 6 路a i 和1 路a 0 ;良好的开放性,操作系统源代码完全公开,便于驱 动程序及应用程序的开发。本设计具有很强的使用价值,通过进一步的开发、调试 和修改后可以直接应用于现场,也可以为此类通用工业控制器的设计和开发提供参 考价值。 1 2 本论文的主要内容和完成的工作 课题组的最终目标是设计一个嵌入式工业控制器,用作风力发电机组的控制平 台。控制器硬件部分的设计已经由前人完成,本人主要负责软件基本系统实现这一 部分工作,论文的主要内容是在工业控制器上实现嵌入式l i n u x 操作系统的移植, 完成基本驱动程序的开发调试,为进一步在控制器上实现算法做准备。 具体工作包括: 1 ) 掌握a r m 体系结构,这部分内容主要基于a t 9 1 r m 9 2 0 0 芯片,对已完成的控 制器硬件部分各功能模块的研究,对硬件原理图设计进行分析,在a d s 下用c 语言 编写各个功能模块的测试程序,对各个模块的功能进行测试,判断各个功能模块工 作是否正常,为移植1 i n u x 驱动做准备。 2 ) 学习l i n u x 操作系统的知识及开发方法,主要掌握嵌入式1 i n u x 内核结构, 2 华北电力大学硕七论文 启动引导程序u - b o o t 代码的分析,u - b o o t 代码的定制方法,嵌入式1 i n u x 内核剪 裁的方法和定制的实现。 3 ) 建立了1i n u x 实验室开发环境,完成交叉编译环境的配置。这部分工作在 于完成一台装有r e d h a t 操作系统的p c 机作为li n u x 开发的服务器,在服务器上安 装交叉编译环境( a r m l i n u x g c c 一2 9 5 3 ) ,本论文的所有源代码的编译全都将在 此环境下实现。安装f t p 和n f s 等常用的嵌入式1 i n u x 开发工具,有了f t p 和n f s 工具,将把w i n d o w s 工作站、1 i n u x 服务器和控制器三方通信建立起来,开发效率 将大大提高。 4 ) 完成启动引导程序u b o o t 的移植,这部分的内容和硬件平台密切相关,需 要深入的研究控制器的结构和u - b o o t 源代码。 5 ) 对l i n u x 内核进行修改和剪裁,使庞大的1 i n u x 内核瘦身到几百k 的大小, 非常适合嵌入式工业控制器。 6 ) 将剪裁好的嵌入式l i n u x 移植到基于a t 9 1 r m 9 2 0 0 的嵌入式工业控制器上。 7 ) 编写和移植驱动程序。编写控制器各个功能模块( a d 、d a 和g p i o 等) 的驱 动程序,并将它们移植到控制器上。编写调试测试程序,来验证驱动程序是否能正 常使用。 华北电力大学硕士论文 第二章控制器硬件平台简介 本课题所实现的控制器,其应用对象为大型风力发电机组,由于对象复杂,控 制算法先进,同时要求严格的实时性,因此选用了a r m 9 系列的a t 9 1 r m 9 2 0 0 作为系 统主芯片,l i n u x 作为操作系统,期望实现一个较为先进的工业控制器。本章先对 a r m 体系结构进行介绍,然后再介绍控制器硬件资源。 2 1a r m 体系结构 a r m 的体系结构总的设计思路是在不牺牲性能的同时尽量简化处理器。同时从 体系结构的层面上支持灵活的处理器扩展。这种简化和开放的思路使a r m 处理器采 用了很简单的结构来进行实现。a r m 是精简指令集计算机( r i s c ) 架构的一种实现, 从而包含了r i s c 架构的一些典型特征:口1 包含一个很大的可见寄存器集。这样的结构设计使编译器能够对函数参数 传递和局部变量的分配进行很大程度的优化。但a r m 的实现并没有采用类 似于s p a r c 那样的寄存器窗口,这也是它的简化思想的一个体现。 采用l o a d s t o r e 结构。和大寄存器集的配合可以尽量使数据处理操作集 中在寄存器中,而不直接的存取内存,从而达到提高程序执行性能的目的。 简化的寻址模式。l o a d s t o r e 指令使用的地址只由寄存器或指令本身提 供,从而去除了计算指令地址所需要的运算器,达到简化硬件的目的。 定长指令集的设计。这样的设计简化了指令译码部件的设计,同时也使指 令流水线的设计得以简化。 内存和外设统一编址。在对结构进行简化的同时,a r m 体系结构也采用了 一些很特别的方式来提高指令执行性能。这些实现都很有特色。 将算术和移位操作相结合的指令实现。使一条数据处理指令可以实现将算 术和移位操作相结合,如指令:a d dr o ,r l ,r 2 ,i s l # 3 将r 2 的内容逻辑左 移3 位后与r l 相加,结果存放到r 0 中。这种结构的实现可以使处理器中 的a l u 和移位器得到最大程的使用率。 指令寻址时可实现地址自加。这种指令对高级语言程序的循环结构的优化 是非常有利的。 多元l o a d s t o r e 指令。可以在一条指令中实现装入储存多项数据,从而 提高数据吞吐量。如指令s t m f ds p ! ,( r 0 一r 2 ,l r l 将寄存器r 0 到r 2 以及 l r ( r 1 4 ) 的内容装入堆栈,也就是s p 所指的内存单元中。这类指令在中 断处理程序或子程序中对现场的保存和恢复中用的很多。也可以实现对数 4 华北电力大学硕士论文 据拷贝操作的优化。 指令的条件执行。a r m 的每条指令的执行都可以是有条件的,这对高级语 言程序中的一些条件分支可以得到很大的优化。 从上面这些特点可以看到,a r m 的设计思想可以算得上是非常精巧,在最大限 度的简化了处理器内部的组件后,再对现有的硬件进行最大程度的利用。实际上, a r m 体系结构的简化设计思想不仅体现在了指令集的设计上,在其体系结构的其他 方面象内存管理,中断异常处理的模式也体现了出来。 2 1 1a r m 处理器模式畸3 a r m 处理器共有7 种运行模式,如表2 1 所示 表2 1a r m 处理器的7 种运行模式 处理器模式描述 用户模式( u s e r ,u s r ) 正常程序执行的模式 快速中断模式( f i q ,f i q )用于高速数据传输和通道处理 外部中断模式( i r q ,i r q )用十通常的中断处理 管理模式( s u p e r v i s o r ,s v e )供操作系统使用的一种保护模式 数据访问中止模式( a b o r t ,a b t )用于虚拟存储及存储保护 未定义指令中止模式( u n d e f i n e d ,u n d )用于通过软件仿真硬件协处理器 系统模式( s y s t e m ,s y s )用于运行特权级的操作系统任务 除了用户模式之外的其他6 种处理器模式称为特权模式( p r i v i l e g e dm o d e s ) 。 在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式的切 换。其中,除系统模式外,其他5 种特权模式又称为异常模式。 2 1 2a r m 寄存器介绍 a r m 处理器共有3 7 个寄存器。其中包括3 1 个通用寄存器,6 个状态寄存器。这 些寄存器都是3 2 位寄存器。 a r m 处理器共有7 种不同的处理器模式,在每一种处理器模式中有一组相应的寄 存器组。任意时刻( 也就是在任意的处理器模式下) ,可见的寄存器包括1 5 个通用 寄存器( r o r 1 4 ) ,一个或两个状态寄存器及程序计数器( p c ) 。在所有的寄存器中, 有些是各模式共用的同一个物理寄存器;有些寄存器是各模式自己拥有的独立的物 理寄存器。表2 2 列出了各处理器模式下可见的寄存器情况。 华北电力大学硕十论文 表2 2 各种处理器模式下的寄存器 用户模式系统模式特权模式中止模式未定义指令模式外部中断模式快速中断模式 r 0r 0r 0 r o r 0 r l r 1r lr 1r 1 r 2r 2r 2r 2r 2 r 3r 3r 3r 3r 3 r 4 r 4r 4r 4 r 4 r 5r 5r 5r 5r 5 r 6r 6r 6r 6r 6 r 7r 7r 7r 7r 7 r 8r 8r 8r 8r 8 r 9r 9r 9r 9r 9 r 1 0r l or 1 0r 1 0r 10 r 1 1r 1 1r 1 1r 1 1 r 1 1 r 1 2r 1 2r 1 2r 1 2r 12 r 1 3r 1 3r 1 3s v cr 1 3a b tr 1 3u n d r 1 4r 1 4r 1 4s v cr 1 4a b tr 1 4u n d p cp cp cp cp c c s p rc s p r c s p rc s p rc s p r s p s rs v cs p s ra b ts p s ru n d k uk u r 1r 1 r 2r 2 r 3r 3 r 4r 4 r 5r 5 r 6r 6 r 7r 7 r 8 r 8 一f i q r 9 r 9 一f i q r i o r i o f i q r 1 1 r 1 l _ f i q r 1 2 r 1 2 f i q r 1 3 i r qr 1 3 f i q r 1 4 i r qr 1 4 f i q p cp c c s p rc s p r s p s r i r q s p s r f i q 2 1 3a r m 体系的异常中断 中断和异常可能是每种处理器体系结构都必须提供的机制。它们提供了处理器 对外部和内部事件的感知和处理的手段和机制。从而也是现代处理器设计中首要考 虑的内容。从操作系统实现者的角度来说,中断和异常是系统体系结构所提供的规 范和机制,具体的实现要由操作系统来完成。 a r m 体系中的异常中断如表2 3 所示。当异常,外中断,或系统调用发生的时 候,程序将转向这些初始地址去执行。这些初始地址被称之为异常矢量( e x c e p t i o n v e c t o r ) 。 6 华北电力大学硕+ 论文 表2 3a r m 体系结构的7 种异常模式 异常或中断类型所进入的模式正常的初始地址优先级( 6 最低) 复位( r e s e t )s u p e r v is o r o x 0 0 0 0 0 0 0 01 未定义指令 u n d e f i n e d 0 x 0 0 0 0 0 0 0 46 ( u n d e f i n e d i n s t r u c t i o n ) 软中断( s w i )s u p e r v is o r 0 x 0 0 0 0 0 0 0 86 指令预取中止 a b o r t o x 0 0 0 0 0 0 0 c5 ( p r e f e t c h a b o r t ) 数据访问中止 a b o r to x 0 0 0 0 0 0 1 02 ( d a t aa b o r t ) 保留未使用 o x 0 0 0 0 0 0 1 4 未使用 外部中断请求i r qo x 0 0 0 0 0 0 1 8 4 ( i r q ) 快速中断请求f i qo x 0 0 0 0 0 0 1 c3 ( f i q ) 2 2 控制器硬件资源 作为工业控制器,与一般商用产品或者开发板最大的不同在于其对外接口的种 类和要求。除了常用的调试、通讯和显示接口以外,还需要大量的模拟量、数字量 ( 开关量) 的输入输出通道。此外,工业控制器对抗干扰的要求也远远高于商用产 品,这在设计过程中必须加以高度重视。图2 1 所示为硬件系统的功能框图。 7 华北电力大学硕士论文 i r s 2 3 2 i 电源电路爵g 到r s 4 8 5 i 时钟电路b e 二刊以太网口 卅队州q u i 复位电路口d 胱 a t 9 1 r m 9 2 0 0 h 剖嗍 i n d n a n df l a s h i g 刊l c 。接口 k) s 。r a m i g d 触摸屏接口 j 似g 接口d i d o 图2 1 硬件系统功能框图 各部分功能如下: ( 1 ) 电源电路:电源电路用于为系统中的所有器件提供工作电压。a t 9 1 r m 9 2 0 0 微处理器有5 种类型的电源引脚:v d d c o r e 引脚( 给内核供电) 、v d d i o m 引脚( 给 外部总线接口供电) 、v d d i o p 引脚( 给外设i 0 口线供电) 、v d d p l l 引脚( 给p l l 供电) 、v d d o s c ( 给振荡器供电) 。除v d d i o m 引脚和v d d i o p 引脚需要3 3 v 电压之 外,其它3 种引脚均需要1 8 v 电压。f l a s h 、s d r a m 存储器、以太网接口芯片、l c d 显示芯片以及触摸屏接口芯片需要供电电压为3 3 v ;r s 2 3 2 、r s 4 8 5 接口芯片和 a d d a 转换芯片需要供电5 v ;运算放大器需要1 2 v 电压。 ( 2 ) 时钟电路:晶振电路用于向a t 9 1 r m 9 2 0 0 微处理器提供时钟。本系统包括 两个晶振,其中3 2 7 6 8 k h z 晶振为系统提供慢时钟,它是系统内唯一不变的时钟; 1 8 m h z 晶振通过倍频后为系统提供1 8 0 m h z 的主机时钟。 ( 3 ) 复位电路:复位对于一个系统来说很重要。各个单元要进入正常工作状 态,需要可靠的复位,而一旦m c u 处于未知状态,比如程序“跑飞 或进入死循环, 就需要强行将系统复位。正常情况下,一般有上电复位和手动复位。本系统可完成 系统上电复位和在系统工作时用户按键复位。 ( 4 ) n o rf l a s h :n o rf l a s h 拥有独立的数据总线和地址总线,程序和数据能 够同时放在一块芯片中,能快速随机读取,允许系统直接从f l a s h 中读取代码执行, 而无需先将代码下载至r a m 中再执行。系统中实现了4 m b ( 2 m 1 6 位) 的n o rf l a s h , 2 华北电力大学硕士论文 用来存放u - b o o t 、l i n u x 内核、用户程序。启动代码可直接在此处运行,然后把自 身复制到s d r a m 中。 ( 5 ) n a n df l a s h :与n o rf l a s h 相比,n a n df l a s h 数据和地址采用同一总线, 实现串行读取,以页为单位进行读和编程操作,以块为单位进行擦除操作,具有快 编程和快擦除的功能。其芯片尺寸小,引脚少,是位成本( b i tc o s t ) 最低的固态 存储器,非常适合作为数据存储器。系统中实现了6 4 m b 的n a n df l a s h ,作为系统 的数据存储器。 ( 6 ) s d r a m :s d r a m 不具有掉电保持数据的特性,但其操作都是由时钟作为同 步信号,存取速度大大高于f l a s h 存储器,数据吞吐量更大,且具有读写功能。 s d r a m 在系统中主要用作程序的运行空间,当系统启动时,m c u 首先从复位地址o x o 处读取启动代码,在完成系统的初始化后,程序代码调入s d r a m 中运行,以提高系 统的运行速度。本系统中实现了3 2 m b ( 2 8 m x1 6 位) 的s d r a m ,可扩展为6 4 m b 。 ( 7 ) r s 2 3 2 :a t 9 1 r m 9 2 0 0 的通用同步异步收发器( u s a r t ) 提供全双工通用同 步异步串行连接。数据帧格式可编程( 数据长度,奇偶校验位,停止位数) 以支持 尽可能多的标准。接收器执行奇偶错误、帧错误及溢出错误检测。接收器超时使能 可变长帧处理,发送器时间保障便于与慢速远程器件通信。接收与发送地址位也支 持多点通信,还支持红外发送和接收。本系统实现了一个9 芯d 型插头的r s 一2 3 2 - c 标准接口。对应于d e b u gu a r t ,可作为调试串口,也可作为一般串口使用。 ( 8 ) r s 4 8 5 :r s - 4 8 5 是在r s 一2 3 2 基础之上出现的新的接口标准,因为r s - 4 8 5 接口具有良好的抗噪声干扰性,长的传输距离和多站能力等上述优点,它已经成为 工业现场通讯中首选的串行接口。本系统实现了一个r s 4 8 5 接口作为工业控制器通 讯总线。 ( 9 ) 以太网接口:a t 9 1 r m 9 2 0 0 微处理器内嵌一个以太网控制器,支持媒体独 立接口( m e d i ai n d e p e n d e n ti n t e r f a c e ,m i i ) ,可在半双工或全双工模式下提供 i o m 1 0 0 m b p s 的以太网接入。只需要外接一片物理层芯片,就可以提供以太网的接 入通道。在本系统中,使用d a v i c o m 公司的d m 9 1 6 1 作为以太网的物理层接口。d m 9 1 6 1 是一款低功耗、高性能的c m o s 芯片,支持l o m 和l o o m 的以太网传输,它起到编码、 译码输入和输出数据的作用。d m 9 1 6 1 提供了i e e e 8 0 2 3 标准定义的m i i ,它包括接 收数据总线和发送数据总线,以控制物理层和m a c 的数据传输。d m 9 1 6 1 使用一个简 单的两线制串行接口,通过m i i 控制物理层并接收来自物理层的信息。其串行控制 接口包括m d c ( 数据时钟) 和m d i o ( 数据输入输出) 。m i i 串行管理包括一个数据接 口,基本寄存器设置和一个针对寄存器设置的串行接口。通过这个接口可以控制和 配置很多物理层设备,得到状态和错误信息,并且确定p h y 设备的工作方式和功能。 ( 1 0 ) a d c :本系统选用的是a d 公司的一款反馈比较型a d c :a d l 6 7 4 ,由a d g 5 0 6 芯片实现1 6 路采样功能。a d l 6 7 4 是1 2 位a d c ,采样时间为1 0 u s ,内部集成了一个 9 华北电力大学硕士论文 对用户透明的s h a ( s a m p l e - a n d h o l da m p l i f i e r ,采样保持放大器) ,单极性或双 极性输入,输入电压范围为一5 w - - + 5 v ,一l o w - - + l o v ,o v , - 一+ i o v ,o v - - , + 2 0 v , 其供电电压为+ 5 v 和1 2 v 或者1 5 v 。 ( 1 1 ) d a c :本系统有1 路1 6 位d a 转换,选用的d a 转换器是b b 公司的d a c 7 1 2 。 d a c 7 1 2 是一款高速1 6 位并行双缓冲数字一模拟转换器,它具有精确的+ l o v 温度补 偿参考电压,其输出电压为一1 0 v + i o v ,电流信号输出为4 2 0 m a ,最大功耗为 6 0 0 m w 。d a c 7 1 2 的数字输入端电平与t t l 兼容,这使得它可以由任意的5 v 逻辑加以 驱动。对双极性模拟输出而言,数字输入端为7 f f f 将得到正满量程输出,8 0 0 0 将 得到负满量程输出,0 0 0 0 将得到双极性的0 输出。它还具有增益和偏置调节功能, 这使得手动对其输出调节变得可能。 ( 1 2 ) l c d 接口:系统中采用s 1 d 1 3 5 0 6 作为液晶显示控制芯片。其具有如下 特性: 1 6 位e d o - d r a m 或f p m d r a m 接口。 支持内存容量:单片2 5 6 k 1 6 位的设备或单片1 m 1 6 位的设备。 支持多种c p u 接口。 在彩色深度为1 6 b p p 时分辨率可达6 4 0 4 8 0 和8 0 0 x 6 0 0 。 支持的显示屏有:4 8 1 6 位无源屏,9 1 2t f t d - t f d 屏,1 8 位t f t d - t f d , 6 4 k 色的c r t ,n t s c 和p a lt v 输出。 显示图像的9 0 。,1 8 0 。,2 7 0 。硬件旋转。 e p s o n 独立同步显示。 虚拟显示支持。 2 db i t b l t 引擎。 软件初始化省电模式。 独立于操作系统。 ( 1 3 ) 触摸屏接口:本系统采用了触摸屏作为输入设备,并选取a d s 7 8 4 3 作为 触摸屏控制芯片。a d s 7 8 4 3 本质是一个具有异步串行接口的1 2 位a d 转换器,它具 有4 线触摸屏接口,单极供电2 7 v 5 v ,转换率可高达1 2 5 k h z 。此外,它还具有 可编程8 位或1 2 位分辨率,2 个辅助模拟输入端以及完善的掉电控制。a d s 7 8 4 3 典 型功耗为7 5 0 u w ,当其进入掉电模式后,功耗可降到0 5 u w 以下,这样的低功耗特 性使得它成为个人数字助理等移动设备中的理想解决方案。支持多种尺寸的触摸 屏。 ( 1 4 ) j t a g 接口:系统的调试接口j t a g 接口利用a r m 处理器中的调试模块的 功能,通过其j t a g 边界扫描口来与仿真器连接,可以利用a d s 调试工具观察c p u 状态,检查和控制c p u 的运行。 ( 1 5 ) d i d o :1 0 个开关量输入通道和1 0 个开关量输出通道,均实现了光电隔 1 0 华北电力大学硕士论文 离,其中,光电耦合芯片速度可达1 m b i t s 。 2 3 本章小结 本章首先介绍了a r m 体系结构,介绍了a r m 处理器模式、a r m 寄存器组、a r m 异常中断等这些处理器基本内容,处理器是控制器的大脑,掌握a r m 体系结构对于 控制器的开发必不可少。然后介绍了嵌入式工业控制器的硬件资源。掌握控制器核 心系统( 处理器、内存、存储模块) 的原理图,为下面移植嵌入式l i n u x 操作系统 做准备。在a d s l 2 下用c 语言编程对控制器外围功能模块进行测试,测试结果显 示控制器各功能模块能正常工作,可以进行下面的1 i n u x 驱动移植工作。 华北电力大学硕士论文 3 1概述 第三章启动引导程序u b o o t 的移植 引导加载程序是系统加电后运行的第一段软件代码。回忆一下p c 机的体系结 构我们可以知道,p c 机中的引导加载程序由b i o s ( 其本质就是一段固件程序) 和 位于硬盘m b r 中的o sb o o tl o a d e r ( 比如,l i l o 和g r u b 等) 一起组成。b i o s 在 完成硬件检测和资源分配后,将硬盘m b r 中的b o o tl o a d e r 读到系统的r a m 中,然 后将控制权交给o sb o o tl o a d 核的入口点去运行,也即开始启动操作系统。而在 嵌入式系统中,通常并没有像b i o s 那样的固件程序( 注,有的嵌入式c p u 也会 内嵌一段短小的启动程序) ,因此整个系统的加载启动任务就完全由b o o tl o a d e r 来完成。比如在一个基于a r m 7 t d m ic o r e 的嵌入式系统中,系统在上电或复位时通 常都从地址o x 0 0 0 0 0 0 0 0 处开始执行,而在这个地址处安排的通常就是系统的 b o o tl o a d e r 程序。 3 1 1b o o tl o a d e r 概念 简单地说,b o o tl o a d e r 就是在操作系统内核运行之前运行的一段小程序。通 过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的 软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好j 下确的环 境。通常,b o o tl o a d e r 是严重地依赖于硬件而实现的,特别是在嵌入式世界。因 此,在嵌入式世界里建立一个通用的b o o tl o a d e r 几乎是不可能的。尽管如此,我 们仍然可以对b o o tl o a d e r 归纳出一些通用的概念来,以指导用户特定的b o o t l o a d e r 设计与实现。 3 1 2b o o tl o a d e r 位置 系统加电或复位后,所有的c p u 通常都从某个由c p u 制造商预先安排的地址 上取指令。比如,基于a r m t t d m ic o r e 的c p u 在复位时通常都从地址o x 0 0 0 0 0 0 0 0 取它的第一条指令。而基于c p u 构建的嵌入式系统通常都有某种类型的固态存储 设备( 比如:r o m 、e e p r o i d 或f l a s h 等) 被映射到这个预先安排的地址上。因此 在系统加电后,c p u 将首先执行b o o tl o a d e r 程序。图3 1 为f l a s

温馨提示

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

评论

0/150

提交评论