已阅读5页,还剩70页未读, 继续免费阅读
(交通信息工程及控制专业论文)基于ARM_Linux的无线数据采集系统.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 微处理器技术、传感器技术和无线通信技术的进步,推动了无线数据采集系统的产 生和发展。数据采集技术广泛应用于雷达、通信、遥感遥测等领域。在各种信息的获取 中,对高速数据采集的需求非常广泛。随着测控技术的发展,对数据采集系统的智能化 和网络化水平也提出了更高的要求。并且由于通讯网络的飞速发展,移动通信与实际应 用的结合使得各种基于g p r s 网络的无线数据传输系统成为当前远距离无线通讯领域最 为广泛的应用。本课题将广泛应用的嵌入式控制器引入到数据采集系统设计中,并结合 g p r s 优秀的网络特性,实现了一个低功耗、智能化、网络化、软硬件可根据具体测量 任务适当裁减的无线高速数据采集平台。 本设计采用3 2 位a r m 处理器s 3 c 2 4 1 0 为核心器件,配以f p g a + d d rs d r a m 高 速数据采集模块,g p r s 数据通信模块,在l i n u x 嵌入式操作系统和应用软件的支持下, 实现了数字化高速采集,数字化无线数据网络传输的现场数据采集系统。该平台采集的 现场数据主要为各种传感器输出的电压模拟量。前端数据采集模块的f p g a 控制高速 a d 转换器将输入的模拟量信号采集后,存储在由d d rs d r a m 构成的大容量缓存中, 再经过嵌入式系统中的微控制器进行各种处理,然后将处理结果保存在a r m 系统的 s d r a m 内存,最后通过在a r m 系统模块扩展的g p r s 模块,将采集到的数据通过g p r s 网络发送出去。 l i n u x 由于其代码开放性以及强大的网络功能等特点,在许多的嵌入式网络设备中 有着广泛应用,与其他的嵌入式操作系统相比,具有着更多的优势。因此本课题将其作 为硬件平台的操作系统。基于a r m 的嵌入式数据采集与处理系统结构清晰、通用性好、 可扩展性强,可为各种嵌入式应用提供一套完整的硬、软件解决方案,在工业测量与控 制领域具有较为广阔的应用前景。 关键字:数据采集系统、f p g a 、嵌入式a r ml i n u x 、g p r s a b s t r a c t m i c r o p r o c e s s o rt e c h n o l o g y , s e n s o rt e c h n o l o g y a n dw i r e l e s sc o m m u n i c a t i o n s t e c h n o l o g y , p r o m o t ew i r e l e s sd a t aa c q u i s i t i o ns y s t e mo fp r o d u c t i o na n dd e v e l o p m e n t d a t ac o l l e c t i o nt e c h n i q u e sa r ew i d e l yu s e di nr a d a r , c o m m u n i c a t i o n s ,r e m o t es e n s i n g r e m o t es e n s i n ga n do t h e rf i e l d s a c c e s st oi n f o r m a t i o ni na l l ,t h eh i g h - s p e e dd a t a a c q u i s i t i o nf o raw i d er a n g eo fn e e d s m e a s u r e m e n ta n dc o n t r o lt e c h n o l o g yw i t ht h e d e v e l o p m e n to fi n t e l l i g e n td a t aa c q u i s i t i o ns y s t e ma n dn e t w o r kl e v e lt oah i g h e rd e m a n d a n da sar e s u l to ft h e r a p i dd e v e l o p m e n to fc o m m u n i c a t i o nn e t w o r k s ,m o b i l e c o m m u n i c a t i o n sa n dt h ep r a c t i c a la p p l i c a t i o no ft h ec o m b i n a t i o no fg p r s b a s e dn e t w o r k e n a b l e sw i r e l e s sd a t at r a n s m i s s i o ns y s t e mh a sb e c o m et h em o s tr e m o t ea r e a so fw i r e l e s s c o m m u n i c a t i o n sa p p l i c a t i o n s t h i si s s u ew i l lb ew i d e l yu s e di ne m b e d d e dc o n t r o l l e r si n t o t h e d e s i g no f d a t a a c q u i s i t i o ns y s t e m ,c o m b i n e d w i t he x c e l l e n tg p r sn e t w o r k c h a r a c t e r i s t i c s ,t h er e a l i z a t i o no fal o w p o w e r , i n t e l l i g e n c e ,n e t w o r k i n g ,h a r d w a r ea n d s o f t w a r et a s k sc a nb em e a s u r e di na c c o r d a n c ew i t ha na p p r o p r i a t er e d u c t i o no ft h es p e c i f i c w i r e l e s sh i g h - s p e e dd a t aa c q u i s i t i o np l a t f o r m t h ed e s i g nu s e s3 2 - b i ta r m p r o c e s s o r $ 3 c 2 4 10a st h ec o r ed e v i c e s ,w i t hf p g a + d d rs d r a m h i g h - s p e e dd a t aa c q u i s i t i o nm o d u l e ,g p r sd a t ac o m m u n i c a t i o nm o d u l e , e m b e d d e di nt h el i n u xo p e r a t i n gs y s t e ma n da p p l i c a t i o ns o f t w a r es u p p o r t ,t oa c h i e v e h i g h - s p e e dd i g i t a la c q u i s i t i o n ,d i g i t a lw i r e l e s so n s i t ed a t an e t w o r kd a t aa c q u i s i t i o ns y s t e m t h ep l a t f o r mo ft h ef i e l dd a t ac o l l e c t e df o rav a r i e t yo fm a i ns e n s o ra n a l o go u t p u tv o l t a g e d a t aa c q u i s i t i o nf r o n t - - e n df p g am o d u l eo fh i g h - s p e e da dc o n v e r t e rt oc o n t r o lt h ei n p u t o ft h ea n a l o gs i g n a l a c q u i s i t i o n ,t h ed d rs d r a mm e m o r yc o n s t i t u t e db yt h e l a r g e - c a p a c i t yc a c h e ,e m b e d d e ds y s t e m sg ot h r o u g h i nav a r i e t yo fm i c r o c o n t r o l l e r sa n d t h e nt h er e s u l t sw i l lb es t o r e di nt h es d r a mm e m o r ya r ms y s t e m s ,t h ef i n a lm o d u l ei n t h ea r ms y s t e mg p r se x p a n s i o nm o d u l e ,t h ed a t aw i l lb ec o l l e c t e dt h r o u g ht h eg p r s n e t w o r kt os e n do u t b e c a u s eo fi t so p e n s o u r c el i n u xa sw e l la sp o w e r f u lf e a t u r e ss u c ha sn e t w o r k f u n c t i o n s , i nm a n ye m b e d d e dn e t w o r kd e v i c e sh a v eb r o a d a p p l i c a t i o n s , a n do t h e r e m b e d d e do p e r a t i n gs y s t e m s ,i th a sm o r ea d v a n t a g e s t h e r e f o r et h i si s s u ea st h eh a r d w a r e i i i p l a t f o r mo p e r a t i n gs y s t e m a r m b a s e de m b e d d e dd a t aa c q u i s i t i o na n dp r o c e s s i n gs y s t e m s t r u c t u r ec l e a r , c o m m o ng o o d ,s c a l a b i l i t y , a n dav a r i e t yo fe m b e d d e da p p l i c a t i o n sf o rt h e p r o v i s i o no fac o m p l e t es e to fh a r d w a r ea n ds o f t w a r es o l u t i o n si nt h ef i e l do fi n d u s t r i a l m e a s u r e m e n ta n dc o n t r o l 、i t hm o r ee x t e n s i v ea p p l i c a t i o np r o s p e c t s k e y w o r d s :d a t aa c q u i s i t i o ns y s t e m ,f p g a 、a r m l i n u x ,g p r s i v 论文独创性声明 本人声明:本人所呈交的学位论文是在导师的指导下,独立进行研究 工作所取得的成果。除论文中已经注明引用的内容外,对论文的研究做 出重要贡献的个人和集体,均己在文中以明确方式标明。本论文中不包 含任何未加明确注明的其他个人或集体已经公开发表的成果。 本声明的法律责任由本人承担。 论文作者签名:a , l ,文 加夕年占月5 日 论文知识产权权属声明 本人在导师指导下所完成的论文及相关的职务作品,知识产权归属 学校。学校享有以任何方式发表、复制、公开阅览、借阅以及申请专利 等权利。本人离校后发表或使用学位论文或与该论文直接相关的学术论 文或成果时,署名单位仍然为长安大学。 ( 保密的论文在解密后应遵守此规定) 加 年6 具日 问年吞疑r 日 炭 袭 嵌 疣 弓 理 名 系 锛 彰 签 文 叫 泛 导 长安大学硕士学位论文 1 1 课题背景及意义 第一章绪论 嵌入式微处理器性能以及网络技术的不断发展,正有力地推动着工业生产、商业活 动、科学实验和家庭生活等领域的自动化和信息化进程。为嵌入式产品造就了崭新而美 好的前景,同时也对无线数据采集技术提出了新的机遇和挑战。这对包括无线数据的高 速采集以及数据采集的处理、传输等课题提出新的要求。 本课题就是在此背景下产生的,在嵌入式无线采集传输平台的开发中,我们采用当 前流行的a r m 9 结构的$ 3 c 2 4 1 0 嵌入式处理器,利用其性价比高、功能丰富、接口完善、 可扩展性强等优点将最新的移动通信技术与嵌入式操作系统融合在一起。由于嵌入式操 作系统l i n u x 对a r m 技术的支持,并且利用l i n u x 内核可裁减,网络功能强大,代码开 放等特点,把l i n u x 应用到嵌入式技术中,这样能充分发挥l i n u x 的优势。论文主要从 嵌入式系统应用与实践的角度出发,以a r m 处理器$ 3 c 2 4 1 0 为核心,阐述了嵌入式系统 基本理论及其开发与实际应用,并建立以此为核心的嵌入式无线数据采集系统。 1 2 数据采集系统概述 无线数据采集【l 】的最初发展是在军事方面的应用等方面。在军事上,使用声音、压 力等传感器采集数据可以用于侦探敌方阵地动静,如人员、车辆行动情况,从而实现战 场实时监督、战场损失评估等。还可以进行战场的实时监测、目标的定位、核攻击和生 物化学攻击的监测以及搜索等功能。通过飞机或者炮弹直接将传感器节点播撒到敌方阵 地内部,或者在公共隔离带部署传感器采集数据,就能够非常隐蔽而且近距离准确地收 集战场信息。利用随机分布的大量传感器进行数据采集并组成有效网络,即使一部分传 感器节点被敌方破坏,剩下的节点依然能够自组织地形成网络。传感器网络可以通过分 析采集到的数据,得到十分准确的目标定位,从而为火力控制系统和制导系统提供精确 地制导。利用生物和化学传感器,可以准确地探测到生化武器的成分,及时提供情报信 息,有利于正确防范和实施有效反击。此外,视频、声学和其它一些传感器件可以探测 到潜在的威胁,根据传感器收集的数据可以准确发出警报。虽然固定的传感器有线网络 可以完成大多数这方面的工作,但是无线网络在需要的时候可以提供更加灵活和更大覆 盖范围的监控。同时,随着数据采集网络通信功能的增强,成本的降低,在其它方面的 l 第一章绪论 用途也越来越广泛,例如设施安全,工业监控等等。 无线数据采集系统由测量站和主控站两部分组成。测量站主要完成现场信号的采集 存储,接收遥控指令并发送数据。主控站的主要工作是发送遥控指令,接收数据信息, 进行数据处理和数据管理,随机显示打印等。其系统组成框图如图1 1 1 3 嵌入式系统概述 主控站 图1 1 无线数据采集系统组成框图 电子工程师协会( i e e e ) 瞳3 ( i n s t i t u t eo fe l e c t r i c a la n de l e c t r o n i c se n g i n e e r s ) 的 定义是:“嵌入式系统是控制、监视或者辅助设备、机器和车间运行的装置”( 原位为 d e v i c eu s e dt oc o n t r o l ,m o n i t o ro ra s s i s tt h eo p e r a t i o no fe q u i p m e n t ,m a c h i n e r yo rp l a n t s ) 。换 言之,嵌入式系统是应用软件与系统硬件的一体化,是软硬件紧密耦合在一起的计算机 系统。 目前国内普遍采用下面描述来定义嵌入式系统:嵌入式系统是一种以应用为中心, 以计算机技术为基础,其软硬件可配置、可裁减,对功能、可靠性、成本、体积、功耗 有严格约束的专用计算机系统。它结合了先进的计算机技术、半导体技术、电子技术以 及各个行业的具体应用,被看作技术密集、不断创新的知识集成系统。嵌入式系统由硬 件和软件两大部分组成,硬件包括了嵌入式处理器和外围硬件设备,软件一般由嵌入式 操作系统和应用软件组成,嵌入式系统是集软硬件为一体的可以独立完成某具体工作的 计算机系统。 2 长安大学硕十学位论文 1 4 课题主要内容及内容设置 本论文从软件和硬件两个方面入手,阐明了基于a r m 9 处理器的高速无线数据采 集平台的设计和建立,以及嵌入式操作系统l i n u x 操作系统的移植并在此基础上的设备 驱动程序和应用程序的设计。在数据无线传输方面利用a r m 9 s 3 c 2 4 1 0 控制下的外挂 g p r s 模块来完成对数据的发送。 在硬件方面,主要针对2 5 0 m h z 采样频率以下信号的高速采集,所以本文采用 f p g a + a r m 的高速数据采集设计。在f p g a 平台上,我们首先利用乒乓操作的方式将 一路高速数据信号转换成频率为原来频率1 4 的4 路低速数据信号,再将这四路数据分 别存储到4 个f i f o 中,然后再对这4 个f i f o 中的数据存储在f p g a 片上的双端口双 时钟r a m 中,最后将f p g a 的双端口双时钟r a m 挂载到a r m 系统的总线上。数据 无线传输利用与f s 2 4 1 0 嵌入式开发板扩展挂接的g p r s 模块,将数据通过g p r s 网络 发送出去。 在软件方面为了更好发挥嵌入式控制系统功能,我们移植了a r m l i n u x 操作系统, 并在$ 3 c 2 4 1 0 平台上设计实现了基于l i n u x 操作系统的自定义的f p g a 模块驱动程序设 计。在研究p p p 协议的过程中,完成在内核实现p p p 协议的主要功能,完成数据的无 线发送功能。 本文共分成五章,其结构如下: 一 第一章绪论。介绍课题背景,目地意义,为课题的展开做好基础。 第二章系统总体设计方案。介绍了数据采集系统硬件总体方案,并详细介绍了该 统各个组成模块的功能及硬件实现过程,其中包括数据采集模块,嵌入式控制模块和 g p r s 数据传输模块。 第三章嵌入式操作系统的移植。详细介绍了嵌入式l i n u x 操作系统移植过程。 第四章设备驱动程序设计。主要将了在a r ml i n u x 体系下设备驱动的实现过程, 重点讲述了字符设备驱动,尤其是f p g a 模块驱动的实现 第五章g p r s 模块。基于p p p 协议下,对采集到的数据进行无线传输。 第六章总结与展望。对本无线数据传输系统进行系统测试,并对该系统进行了未 来发展的展望。 第二章系统的构成 第二章系统的构成 2 1 数据采集平台的总体设计 嵌入式系统通常由硬件和软件两部分组成。硬件以嵌入式微处理器为核心,扩展各 种外围设备( 如存储器、显示器、触摸屏、键盘) 和硬件接口,从而实现对众多上层应用 的底层硬件支持。嵌入式系统的软件可分为两大部分:开发平台的嵌入式操作系统和高 级应用程序。作为其软件开发平台的嵌入式操作系统应具备如下特征:适应于多种c p u 和多种硬件平台、性能稳定、裁剪性好、开发和使用都很容易、生成的代码质量高、可 靠性好、有一定的实时处理能力,有良好的网络功能等。 本文中的硬件采集架构采用的是a r m + f p g a 架构,其中充分利用了f p g a 的并行处 理的能力,以及采用乒乓原理( 乒乓原理是一种用于数据流控制的处理技术) 进行前端 设计。同时又利用了a r m 低功耗高性能比的优点,将采集到的数据在a r m 核心处理平台 上加以处理和显示,从而在较低频率( 最高频率为2 0 0 h z ) 的a r m 9 平台上实现了对高速数 据的快速但低功耗的采集与显示。最后利用a r m 控制平台扩展的g p r s 模块将数据传送 出去。 其硬件结构框图为如图2 1 所示。 数据采集模块 数据传输模块 a d 转换器 甲甲f l 呷n o r 甲i n a n d f p g a 嵌入式a r m 9s 3 c 2 4 1 0 o p r s 模块 s d r a m 凿白曲 图2 1 系统硬件结构框图 2 2 前端高速a d c ( 模数转换器) 本系统采用a d 公司生产的1 4 位高精度高速模数转换器a d 9 2 4 4 ,它采用先进的c m o s 4 长安大学硕士学位论文 制作工艺,并采用4 8 脚表贴封装形式。 a d 9 2 4 4 的优点如下:采用单+ 5 v 模拟电源供电,数字电源有+ 3 v 或者+ 5 v 两种选择: 采样率高达6 5 m s p s :4 0 m s p s 采样率时功耗仅为3 4 0 m w ,在6 5 m s p s 采样速率下,功耗为 5 9 0 m w :具有7 5 0 m h z 的模拟输入信号带宽:最高采样速率下的信噪比可达7 4 d b :片内集成 有高性能的采样保持放大器,输入信号可以采用单端输入,也可以采用差分输入:片内 提供的+ l vn + 2 v 参考电压可通过改变接口的电阻值来设定:具有溢出指示位( o t r ) ,当 输入信号超出正常工作范围时置1 。该位信号与1 4 位数字输出信号中的最高位以固定方 式组合可判定输入信号是上溢出还是下溢出:可高速并行输出1 4 位数字信号,并可通过 d f s 脚将其设置为直接二进制或二进制补码形式:具有很高的欠采样性能,当输入信号为 l o o m a z 、采样频率为6 5 m s p s 时,其s n r ( s i g n a lt on o i s er a t i o 信噪比) 可达7 0 d b ,s f d r ( s p u r i o u sf r e ed y n a m i cr a n g e 无杂散动态范围) 可达8 2 d b : a d 9 2 4 4 可用来处理峰峰值为+ 5 一一5 v 的模拟信号。输入信号和时钟信号都可以采 用差分输入形式来处理,可以使系统获得最好的性能。1 4 位数字输出信号可以表示为直 接二进制的形式,也可以是二进制补码的形式。一位溢出表示位( o t r ) 可以用来标明输 出溢出信号,将这一位信号和1 4 位信号中的最高位用一定方式组合起来可用来判定输 入信号是上溢出还是下溢出。v i n + ,v i n 一为模拟信号输入端。采用单输入形式时,在v i n + 端接输入信号,v i n 一端接地:采用差分形式输入模拟信号时,v i n + ,v i n 一分别接到差分 信号的两端。差分形式的输入对于高精度高速度的应用效果更好。大多数输入信号都是 单路形式,为了便于差分采样系统进行高速采样,本设计采用差分转换芯片a d 8 1 3 8 来 完成实现单路信号向差分信号的转换,其电路图2 2 所示。因为单端输入以一个共同点 为参考点,这种方式适用于输入信号为高电平( 大于l v ) 且信号源与采集端之间的距离 较短( 通常小于5 m ) 的应用场合。如果不能满足上述条件,则需要使用差分输入。在差 分输入方式下,每个输入可以有不同的参考点,并且有效地消除了共模噪声的影响,所 以差分输入方式的采集精度较高。 在这里,a d c ( 模数转换器) 主要实现的功能是将高速模拟信号( 最高采样频率为 5 0 0 h z ) 转换成为数字信号,然后分两路传入f p g a 中,同时提供对应通路的时钟信号输 出。 第二章系统的构成 2 3f p g a 模块 图2 2 差分信号转化电路 双时钟f i f o i p 【j a 懊块 数据总线 r p o t t aa r m 双时钟f i f 0 2 地址总线 r r a m 控制块 s 3 c 2 4 l o c l - uc il 咄 中断信号线 a d 9 2 4 4 ( 高速模 时钟控制 单元 数转换器) 高c ik b 双时钟f i f 0 3 双端口 双时钟 p o r t br 八m 双时钟f i f 0 4 图2 3 数据采集模块原理图 数据采集模块a l t e r a 公司的c y c l o n ee p l c 6 现场可编程门阵列( f p g a ) 。数据采集 模块原理图如图2 3 。f p g a 最显著的特点之一是其并行特性。我们利用v h d l 语言和 q u a r t u si i 提供的i p ,结合f p g a 的乒乓原理设计了一个4f i f o 结构将高速采集到的 数据进行缓冲,然后将4 个8 b i t 的f i f o 输出数值拼接成3 2 位之后放入一个双端双时 钟的r a m ,同时通过检测r a m 的写地址信号线以此来判断r a m 写入数据量是否达到阈值。 如果达到阈值话则就在嵌入式a r m 控制平台的外部i r q 中断信号,然后a r m 处理器通过 l i n u x 下的f p g a 驱动程序处理r a m 中采集到的数据。 6 长安人学硕士学位论文 数据采集模块充分利用f p g a 在并行处理和时序逻辑设计方面的优势,利用乒乓操作方 式达到用低速模块处理高速数据流的效果。数据采集模块包括数据缓冲和数据存储两部 分。乒乓操作的处理流程描述如下:a d 转换后的数据流通过输入数据选择单元等时地将 数据流分配到2 个s r a m 中。在第1 个缓冲周期,将输入的数据流缓存到s r a m i ;在第2 个缓冲周期,通过输入数据选择单元的切换,将输入的数据流存放到s i 洲2 ,同时,将 s r a m 中第1 个周期的数据通过输出数据选择单元的选择,送到运算处理单元进行处理。 在第3 个缓冲周期,再次切换数据的进入与输出存储模块。如此循环,周而复始。 数据采集模块数据流如图2 4 ( 1 ) 数据缓冲 图2 4 数据采集模块数据流 数据缓冲部分的作用是将高速数据信号分成4 路低速数据,并写入4 个f i f o 中。 然后再构建4 个先进先出缓冲器f i f o i f i f 0 4 ,以乒乓操作模块的方式将a d 9 2 4 4 的输 出信号分别存储到4 个f i f o 中。其中p o r ta 对应的两个数据缓冲区分别为f i f 0 1 和 f i f 0 3 ,p o r tb 对应的两个数据缓冲区分别为f i f 0 2 和f i f 0 4 。 8 位字节宽度的f i f 0 1 4 组成数据缓存,它们具有同频不同相的写时钟信号,并且 具有相同的读时钟信号f i f or d c l k 。 由a d 9 2 4 4 的时序图和数据缓冲的输入时序图可以知道,数据采集启动后数据缓冲 模块f i f 0 1 一f i f 0 4 中存储数据分别为n ,n + i ,n + 2 ,n + 3 。时序控制模块再限定每次 启动后,都将数据从f i f 0 1 开始存放,以便满足顺序读取的要求。 7 第二章系统的构成 利用a d 9 2 4 4 的数据输出时钟d c o + 和d c o - ,产生数据缓冲时钟信号,数据信号 f i f 0 1 4 分别对应数据缓冲器的数据输入时钟w r c l k l - 4 ,如图2 4 。当启动一次数据采 集时,在d c o + 第一个上升沿( a d 9 2 4 4 输出第一个有效数据) ,开始产生数据缓冲器的输 入时钟信号,以此来保证有效数据顺序存储到各个缓冲器中。 ( 2 ) 数据存储 数据存储部分的作用,就是将前端数据缓冲部分的4 路数据信号,恢复成原来采样 信号的顺序,即将原来的4 路8 位信号拼接成一路3 2 位信号,并需要保持其正确的顺 序。 在每个f i f or d c l k 上升沿,同时从f i f o 卜4 中读取8 位数据信号,并拼接成3 2 位数据信号,存入一个3 2 位位宽的双时钟双端口r a m 中。r a m 的写时钟r u d e sw r c l k 与f i f o 的f i f or d c l k 必须是同频信号。由于f i f o 时钟与输出之间存在有延迟( t c o ) , 所以在此设计中采用了把f i f or d c l k 相位向后偏移一定相位的时钟信号作为r a m w r c l k 的方法,以此来避免产生竞争冒险。 在存储数据时,r a m 采用小端结构。所谓小端结构就是指把低字节存在低地址中, 而高字节就存在高地址中。每写入一个字( 即为4 个字节) 的数据时,只需将f i f 0 1 - 4 的输出分别连到r a m 的第一到第四个字节。f i f 0 1 存储到一个字的低8 位,f i f 0 4 就存 储到了同一个字的高8 位,使r a m 中数据顺序与采集的数据顺序相同。 数据存储控制采用中断方式进行数据流控制。每当f i f o 缓冲器中存储的数据达到 某一个阈值( 设定本系统阈值为3 2 字节,f i f o 的容量6 4 字节) 时,控制模块从缓冲区读 出数据并存储到r a m 中。当数据存储器r a m 中的数据量达到某个阈值时( 本系统r a m 容 量为4 k 字节。阈值设置为4 k ,也可以设置小于r a m 容量的其它值) ,控制模块向c p u 发出数据处理中断请求,c p u 通过总线直接访问r a m 。 理论上当f i f o _ r d c l k = c l k 4 时( c l k 为采样时钟) ,信号的存储速度与采集速度相 同,此时f i f o 缓冲区所存储的数据量是不变的。但是如果f i f o r d c l k c l k 4 时则会造成f p g a 数据缓冲区频繁的 发出空中断,所以系统设计时最好令f i f o _ _ r d c l k = c l k 4 。对于采样频率为a d 9 2 4 4 的最 高频率2 5 0 1 哪- l z 时,4 路缓冲器中每一路只需工作在6 2 5 m h z 时钟频率下,同时通过软件 设置f p g a 的时钟发生模块寄存器的值,可将f i f o 的写时钟信号进行2 。分频( 0 n a n dd e v i c es u p p o r t n a n df l a s hs u p p o r tf o r $ 3 c 2 410s o c 木 $ 3 c 2 4 1 0n a n d d r i v e rd e b u g ( 7 ) 配置内核时选中y a f f s 支持: f i l es y s t e m s 一 m i s c e l l a n e o u sf i l e s y s t e m s y e ta n o t h e rf l a s hf i l i n gs y s t e m ( y a f f s 、f i l es y s t e ms u p p o r t 木 n a n dm t ds u p p o a 枣 u s ee c c f u n c t i o n so f t h eg e n e t i cm t d n a n dd r i v e r 【幸 u s el i n u xf i l ec a c h i n gl a y e r 3 3 第三章嵌入式操作系统l i n u x 移植 宰 t u r no f fd e b u gc h u n ke r a s ec h e c k 木 c a c h es h o r tn a m e si nr a m ( 8 ) 编译内核并将内核下载到开发板f l a s h 的相应分区中。 3 7 根文件系统的创建 启动后系统引导会出现p a n i c 错误信息,原因是此时系统只是启动了一个核心,没 有提供系统启动后要运行的第一个程序i n i t 的根文件系统( r o o t f s ) ,要使其启动到字 符界面交互状态,就要提供一个根文件系统。嵌入式l i n u x 系统可以使用c r a m f s ,j f f s 2 , r a m d i s k 等多种根文件系统。这里我们介绍使用b u s y b o x 建立c r a m f s 和r a m d i s k 根文件 系统的过程。 1 ) 根文件系统的基本结构。根文件系统的顶层目录各有其特殊的用途,而且根据不 同的需要,顶层目录也不尽相同。下面是一般要包含在其中的重要目录: b i n 一保存大多数象i n i t ,b u s y b o x ,s h e l l 、文件管理实用程序等二进制文件: s b i n - 保存系统启动过程通常需要的命令。 如e 2 f s c k ,m k e 2 f s ,f d i s k ,i n s m o d ,r m m o d ,d e p m o d ,m o d p r o b e ,l s m o d ,s h u t d o w n ,r e b o o t , l o g i n ,i n i t ,g e t t y , m o u n t ,u m o u n t 等: d e v - 包含用在设备中的所有设备节点: e t c 一包含系统的所有配置文件: p r o c - 这是一个必须设置的特殊目录,在系统运行之后它下面有许多内容, 这些内容是实时、不断跟踪系统内核和正在运行的进程的状态而产生的,但不占用任何 磁盘空间,而是驻留在内存中;在某些情况下,可以通过它来进行系统设置,许多工具 从这里获取信息,如d m e s g ,p s ,t o p 等;在内核编译选项文件系统选择中,我们选 择对文件系统p r o c 的支持: 1 i b - 包含所有必需的库,根据b i n 和s b i n 目录下的可执行文件需要的动态 链接库来确定l i b 目录下的内容。 现在建立一个目录m k d i r r o o t f s 作为放置根文件系统的目录。并在其中建立必要的 目录:m k d i rb i ns h i nd e ve t cp r o cl i bb s r o 2 ) 编译b u s y b o x 。b u s y b o x 是一个著名的开源项目,它是许多嵌入式l i n u x 系统的 基石,其网站目前位于h t t p :w w w b u s y b o x n e t l 。它用一个极小型的应用程序来提供 长安大学硕士学位论文 上述位于b i n 和s b i n 中的整个命令集的功能,它还支持动态和静态方式链接g l i b c , 允许根据需要修改缺省配置,选中或移除所包含的命令。b u s y b o x 提供的配置界面与 l i n u x 菜单配置界面非常相似。下面简要说明其使用过程。 ( 1 ) 首先要到网站下载b u s y b o x 源代码,目前最新版本为b u s y b o x 一1 1 1 t a r g z : ( 2 ) 解压源文件包:t a r z x v fb u s y b o x 一1 1 1 t a r g z ; ( 3 ) 建立一个符号链接并进入目录 i n sb u s y b o x - 1 1 1b u s y b o xc db u s y b o x ; ( 4 ) 进行相关配置:m a k em e n u c o n f i g 。其中最主要的是指定交叉编译器路径和 b u s y b o x 要运行的平台类型。我们的交叉编译器路径设为: o p t e l d k u s r l b i n a r m - l i n u x - 移植平台为: :a r c h = a r m 选中不使用u s r 项,否则生产的b u s y b o x 命令会覆盖当前系统的原有命令。 其它都是相关命令,可根据需要进行选择。最后保存退出。 ( 5 ) 交叉编译b u s y b o x 。 m a k ea l l m a k ei n s t a ll 完成后会在i n s t a l l 目录下产生b i n 和s h i n 目录,其中包含的就是可以在目标平 台上运行的命令。可以看到,除了b u s y b o x 是可执行文件外,其它都是指向b u s y b o x 的 链接,当执行一个命令时,会自动执行b u s y b o x ,由b u s y b o x 根据调用命令执行相应操 作。 ( 6 ) 将生成的命令拷贝到上面建立的相应目录中。 c p a b i n 木b o o t f s b i n c p a s b i n 术b o o t f s i s b i n 再从交叉编译器中拷贝需要的g l i b c 库文件至u r o o t f s 1 i b 下。 3 ) 建立c r a m f s 。c r a m f s 是只读压缩的根文件系统,不能修改,在安装介质中运 行。制作c a r m f s 较简单,使用m k c r a m f s 工具: m k c r a m f s r o o t f sr o o t f s c r a m f s 生成的r o o t f s c r a m f s 就是c r a m f s 文件系统,可以直接烧到f l a s h 相应分区中。 4 ) 建立r a m d i s k ar a m d i s k 文件系统制运行在a m 中,运行时可写,但掉电易失。 r a m d i s k 所占r a m 空间的大小取决于内核的配置,在内核配置的时候,可以修改r a m d i s k 3 5 第三章嵌入式操作系统l i n u x 移植 大小( 缺省为4 0 9 6 k ) 。以制作一个默认大小( 4 m ) 的r a m d i s k 为例,步骤如下: ( 1 ) 在宿主机上编译运行在目标机l i n u x 内核时,将b l o c kd e v i c e 中的r a m d i s l f 支持选上,设定r a m d i s k 的大小为缺省的4 0 9 6 k ,对i n i t r d 的支持也选上。 ( 2 ) 在宿主机上建立m y r a m d i s k 目录,按照上述的原则建立必要的目录和文件。 ( 3 ) 执行下列步骤: 在根目录下建立一个文件m y r a m ,从设备文件d e v z e r o 中读取数据填充文件 m y r a m ( 注:d e v z e r o 是一个特殊的设备文件,从这个文件读出来的数据全是o f f ,以便 后面得到更高的压缩率) : # d di f = - d e v z e r oo f = - m y r a mb s = l kc o u n t = 4 0 9 6 将此4 m 的r a m d i s k 空间格式化为e x t 2 类型的文件系统: # m k e 2 f s m o - f m y r a m4 0 9 6 在m n t 下建立目录r a m ,将己格式化e x t 2 类型文件系统的r a m d is k 挂载至目录 m n t r a m 上: # m o u n t 一0l o o p m y r a m m n f f r a m 将宿主机上m y r a m d i s k 目录下的文件结构拷贝至m n t r a m 目录中( 这就相当于 拷贝至文件m y r a m 中了) : # c p a v m y r a m d i s k 幸m n t r a m 卸载掉m n t r a m : # u m o u n t r n n f f r a m 产生一个压缩的映象文件: # g z i p - v 9 m y r a m m y r a m d i s k i m g g z 最后将生成的m y r a m d i s k i m g g z 下载到f l a s h 相应的分区中。 5 ) 关于启动脚本。一般系统启动时都会按要求执行相应的初始化操作。写在命令 行里就是i n i t = l i n u x r c ,这个l i n u x r c 是指向e t c i n i t d r c s 文件的一个符号链接。在r c s 文件中列出了l i n u x 初始化时要执行的文件,例如,初始化进程i n i t ,挂载根文件系统, 挂载模块化设备驱动等。r c s 的作用大致上相当于w i n d o w s 中的a u t o e x e c b a t 文件。由 于对于不同应用,r c s 的内容变化太多,在此不作叙述。具体内容可参考相关文档。我 们使用的r c s 文件格式如下: # ! b i n s h b in m o u n t a 长安大学硕士学位论文 m o u n t ty a f f s d e v m t d b l o c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年长宁县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年平乡县医疗事业单位人员招聘笔试参考题库及答案解析
- 2026年灵寿县带编教师招聘笔试参考题库及答案解析
- 2026年云霄县医疗事业单位人员招聘笔试备考试题及答案解析
- 2026年弥渡县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年寿宁县医疗事业单位人员招聘考试备考题库及答案解析
- 2026年团风县医疗事业单位人员招聘考试备考题库及答案解析
- 2026年正定县带编教师招聘考试模拟试题及答案解析
- 2026年涟水县医疗事业单位人员招聘考试备考试题及答案解析
- 2026年太康县医疗事业单位人员招聘笔试模拟试题及答案解析
- 民进班子成员工作制度
- 综合门诊部工作制度
- 平急转换工作制度
- Python大数据处理与分析
- 酒店店长绩效考核制度
- 2025年智慧景区建设草原旅游游牧文化数字化展示方案
- 2025年广投集团招聘笔试题目及答案
- 2025-2026学年教科版一年级体育全一册教案
- 面部识人课件
- 舞美灯光施工方案
- 药厂QC培训课件
评论
0/150
提交评论