已阅读5页,还剩56页未读, 继续免费阅读
(物理电子学专业论文)基于数字图像处理的嵌入式系统开发.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 嵌入式系统是一种具有特定功能的计算机系统,它与通信技术和网络技术的结合, 极大的增强了设备的网络和通信的灵活性和智能性。随着信息技术的不断发展和用户 需求的不断增长,嵌入式系统逐渐走进国民生产的方方面面,其应用也日益广泛。在 此基础上,利用嵌入式系统进行图像处理,无疑将会极大的增强图像处理系统的通信、 交互、数据处理等能力,扩展图像处理技术的应用范围及其对不同环境和要求的适应 能力。 本文的目的旨在研究基于嵌入式系统架构的图像处理系统的设计与实现方法。针 对嵌入式系统本身的特点,采用q t e m b e d d e d 图形用户接口,设计出用户界面,并且 实现了图像二值化,狄度变换,中值滤波等算法,用于证明本方案的可行性。在文中 给出了部分程序的源代码。 关键词:嵌入式系统图像处理 q t e m b e d d e d a b s t r a c t t h ee m b e d e ds y s t e mi sak i n d o fc o m p u t e rs y s t e mw i t hs p e c i a lf u n c t i o n s w h e n i ti si n t e g r a t e dw i t hc o l b i l l u n i c a t i o na n d n e t w o r kt e c h n o l o g y ,i tw i l le n h a n c et h e a b i l i t ya n di n t e l i i g e n to fi n s t r u m e n t sa n dd e v i c e s n e t w o r ka n dc o m m u n i c a t i o n w i t ht h ec o n s t a n t l y d e v e l o p i n go ft h ei n f o r m a t i o nt e c h n o l o g ya n d i n c r e a s i n go ft h er e q u i r e m e n to fu s e r s ,t h ee m b e d d e ds y s t e mi se n t e r i n gi n t o a l lk i n d so ff i e l d so fn a t i o n a lp r o d u c tg r a d u a l l ya n du s e de x t e n s i v e l y b a s e d o nt h i s ,t h ed e v e l o p m e n to ft h ei m a g ep r o c e s s i n gb a s e do nt h ee m b e d d e ds y s t e m w i l le n f o r c et h es y s t e mo fi m a g ep r o c e s s i n gsa b i l i t y :c o m m u n i c a t i o n ,i n t e r c o m m u n i o n ,d a t ap r o c e s s i o na n ds oo n ,a ts a m eti m ei tc a ne x t e n tt h er a n g eo f a p p l i c a t i o n ,a d a p t i v ef a c u l t yf o rd i f f e r e n tc o n d i t i o na n dr e q u e s t t h ep a p e ra i m st os t u d yad e s i g na n dt e c h n i q u eo ft h ei m a g ep r o c e s s i n gb a s e d o nt h ea r c h i t e c t u r eo fe m b e d d e ds y s t e m a i m e da tt h eo w nc h a r a c t e r i s t i co f e m b e d d e ds y s t e m ,a n dt h eg r a p h i c su s e ri n t e r f a c ea r ed e v e l o p e do nt h ep l a t f o r m w i t hu s i n gt h eq t e m b e d d e d a c c o r d i n gt ot h ei n t e r c o m m u n i o nb e t w e e nt h eh u m a n a n dt h ep l a t f o r m a tl a s t s o m ek e yp r o g r a m sc o d ei sg i v e n k e yw o r d s :e m b e d d e ds y s t e mi m a g ep r o c e s s i n gq t e m b e d d e d n 长春理工大学硕士学位论文原创性声明 本人郑重声明:所呈交的硕士学位论文,基于数字图像处理的嵌入式系统 开发是本人在指导教师的指导下,独立进行研究工作所取得的成果。除文中已 经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的作 品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。 作者签名:i 边。游三月盈r 长春理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“长春理工大学硕士、博士学位论文版 权使用规定”,同意长春理工大学保留并向国家有关部门或机构送交学位论文的 复印件和电子版,允许论文被查阅和借阅。本人授权长春理工大学可以将本学位 论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫描等 复制手段保存和汇编学位论文。 作者签名:姐拗出年三月斗日 指制币躲趣避年三月强日 1 1 嵌入式系统m 第一章绪论 嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、 适应于应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 目前嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算机的外部 设备中就包含了5 一1 0 个嵌入式微处理器,键盘、鼠标、软驱、硬盘、显示卡、显示器、 网卡、m o d e m 、声卡、打印机、扫描仪、数字相机、u b s 集线器等均是由嵌入式处理器 控制的。在制造工业、过程控制、通信、仪器、仪表、汽车、船舶、航空、航天、军 事装备、消费类产品等方面均是嵌入式计算机的应用领域。 简单的晚嵌入式系统就是应用软件与系统硬件的一体化,类似于b i o s 的工作方式。 具有软件代码小,高度自动化,响应速度快等特点,特别适合于有实时性要求的多任 务体系。嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具 体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资会密集、高度分 散、不断创新的知识集成系统。 今天嵌入式系统带来的工业年产值己超过了1 力亿美元,1 9 9 7 年来自美国嵌入式 系统大会( e m b e d d e ds y s t e mc o n f e r e n c e ) 的报告指出,未来5 年仅基于嵌入式计算机 系统的全数字电视产品,就将在美国产生一个每年1 5 0 0 亿美元的新市场。美国汽车大 王福特公司的高级经理也曾宣称,“福特出售的计算能力己超过了i b m ”,由此可以 看出嵌入式计算机工业的规模和广度。1 9 9 8 年1 1 月在美国加州何塞举行的嵌入式系统 大会上,基于r t 0 8 的f a b e d d e di n t e r n e t 成为一个技术新热点。美国著名科学家尼葛 洛庞帝,1 9 9 9 年1 月访华时预言,4 5 年后嵌入式智能( 电脑) 工具将是p c 和因特网之 后最伟大的发明。我国著名嵌入式系统专家沈绪榜院士1 9 9 8 年1 1 月在武汉全国第1 1 次微机学术交流会上发表的计算机的发展与技术一文中,对未来l o 年以嵌入式芯 片为基础的计算机工业做了科学的阐述和展望。 嵌入式操作系统的特征: 1 软件要求固态化存储 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片 或单片机本身中,而不是存贮于磁盘等载体中。 2 软件代码高质量、高可靠性 尽管半导体技术的发展使处理器速度不断提高、片上存储器容量不断增加,但在 大多数应用中,存储空问仍然是宝贵的,还存在实时性的要求。为此要求程序编写和 编译工具的质量要高,以减少程序二进制代码长度、提高执行速度。 3 系统软件( o s ) 的高实时性是基本要求 在多任务嵌入式系统中,对重要性各不相同的任务进行统筹兼顾的合理调度是保 证每个任务及时执行的关键,单纯通过提高处理器速度是无法完成和没有效率的,这 种任务调度只能由优化编写的系统软件来完成,因此系统软件的高实时性是基本要求。 4 多任务操作系统是知识集成的平台和走向工业标准化道路的基础 a 嵌入式实时多任务操作系统 实时多任务操作系统( r e a lt i m eo p e r a t i n gs y s t e m ) 是根据操作系统的工作特性 而言的。实时是指物理进程的真实时问。实时操作系统是指具有实时性,能支持实时 控制系统工作的操作系统。首要任务是调度一切可利用的资源完成实时控制任务,其 次才着眼于提高计算机系统的使用效率,重要特点是要满足对时自j 的限制和要求。 实时操作系统应具有如下的功能: 1 ) 任务管理( 多任务和基于优先级的任务调度) 2 ) 任务问同步和通信( 信号量、管道、共享内存、邮槽等) 3 ) 存储器优化管理( 含r o m 的管理) 4 ) 实时时钟服务 5 ) 中断管理服务 b 实时多任务操作系统与分时多任务操作系统 实时多任务操作系统与分时多任务操作系统有明显的区别。具体的说,对于分时 操作系统,软件的执行在时间上的要求,并不严格,时间上的错误,一般不会造成灾 难性的后果。而对于实时操作系统,主要任务是对事件进行实时的处理,虽然事件可 能在无法预知的时刻到达,但是软件上必须在事件发生时能够在严格的时限内做出响 应( 系统响应时间) ,即使是在高负荷下,也应在此时限内做出响应,超出时限就意味 着致命的失败。另外,实时操作系统重要特点是系统能对运行情况的最好和最坏等的 情况能做出精确的估计。 1 2 嵌入式系统与通用计算机系统的区别 嵌入式实时操作系统的特点除了具有操作系统的共性以外,为适应“嵌入式实时” 应用,嵌入式实时操作系统还具有实时性、微内核结合扩展模块实现通用性与可配置 性、操作系统不对外设作假设等突出特点。 1 实时性 实时表示“及时”,是一个相对概念;实时眭表明操作系统在可预见的时间内响应 和处理外部事件的能力,是嵌入式实时操作系统性能的关键指标之一。为保证良好的 实时性,嵌入式实时操作系统一般采用多任务机制,以并发方式执行应用程序。 2 微内核结合扩展模块实现通用性与可配置性 为了在结构和功能上适应不同的“嵌入式”应用,嵌入式实时操作系统通常采用 2 微内核与可配置的功能模块相结合的体系结构,使操作系统同时具备了通用性和可配 置性。 3 操作系统不对外设作假设 操作系统的实现只与c p u 有关,而不假设c p u 以外的其他物理硬件。与硬件相关 的功能依靠另外一个叫做板级支持包( b o a r ds u p p o r tp a c k e t ) 的软件层次来完成,从 而实现了操作系统的“硬件无关性”,提高了系统的通用性和可移植性。 4 嵌入式实时系统与通用计算机系统的对比 嵌入式实时系统与通用计算机系统的对比见表i - i 。通过对比可以看出:嵌入式系 统是以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应于应用系统,对功 能、可靠性、成本、体积、功耗严格要求的专用的计算机系统。 表卜1 嵌入式实时系统和通用计算机系统的对比 比较项目嵌入式实时系统通用计算机系统 硬件环境应用相关性和多样相似性c p u 功能强 性c p u 专用性强、功大、通用性强、外设 能紧凑、外设简单、较多、扩展能力强 扩展能力有限 操作系统实时性好、高度优化实时性一般 应用程序嵌入式系统和操作于操作系统松耦合, 系统紧密结合。针对通用性、移植性好 性强、通用性、移植 性一般 系统设计和开发开发和运行在不同开发和运行在相似 的平台,通常采用交的平台,无需特定的 叉开发的方式开发环境 1 3 常用的嵌入式操作系统 1 p a l mo s p a l mo s 是由p a l m 公司开发、应用在p d a 上的操作系统。自最早版本1 0 在1 9 9 6 年3 月随p a l m 公司的p d a 产品p i l o ti 0 0 0 面市以来,p a l mo s 不断推出新版本,在 p d a 操作系统上市场占有率位居前列。 p a l mo s 提供可用性很强的a p i ,使得任何人都可以开发基于p a l mo s 的应用程序: 在i n t e r n e t 上也发布了很多免费的应用程序,丰富的可用资源是p a l mo s 风靡全球的 一个重要原因。 2 w i n d o w sc e w i n d w o sc e 是m i c r o s o t f 公司1 9 9 7 年发布的应用在p d a 等设备上的嵌入式操作系 统。1 9 9 8 年,装有中文版w i n d o w sc e 操作系统的手持设备面世。这几年中,w i n d o w sc e 在p d a 操作系统市场中份额逐年上升。 w i n d o w sc e 不同于以往的w i n d o w s 系列产品。它是一种基于组件的操作系统,各 功能模块可方便地裁减,使系统变得很紧凑,系统运行所需的设备也就很少。 3 uc o s i ic 0 s 是对实时内核的研究兴趣而产生的,并且开放源代码。作为非商业用途, uc o s 是完全免费的。| lc o s 是一个实时操作系统内核,它仅包含了任务调度、任务 管理、时阃管理、内存管理和任务问通信和同步等基本功能,没有提供输入输出管理、 文件管理、网络等额外的服务。由于uc o s 良好的可扩展性和源码开放,这些功能完 全可以由用户根据需要自己实现。 4 嵌入式l i n u x 目前币在丌发的嵌入式系统中,7 0 以上的项目选择l i n u x 作为嵌入式操作系统。 嵌入式l i n u x 具有适合于嵌入式系统的特点:内核精简,高性能、稳定;良好的多任 务支持;适用于不同的c p u 体系架构;支持多种体系架构;如x 8 6 、a r m 、m i p s 、a l p i i a 、 s p a r c 等:可伸缩的结构;外设接口统;开放源码;软件资源丰富。 1 4 基于l i n u x 的嵌入式操作系统 1 4 ,1l i n u x 操作系统的起源和发展 l i n u x 的兴起可以说是i n t e r n e t 创造的一个奇迹。1 9 9 1 年初,当年轻的芬兰大学 生l i n u st o r v a l d s 在开始其l i n u x 操作系统的设计时,他的目的只不过是想看一看 i n t e l3 8 6 存储管理硬件是怎样工作的,却没有想到这一举动会在计算机界产生如此重 大的影响。他的设计进展得很顺利,只花了几个月时间就在一台i n t l e 3 8 6 微机上完成 了一个类似于u n i x 的操作系统,这就是最早的l i n u x 版本。1 9 9 1 年底,l i n u st o r v a l d s 首次在i n t e r n e t 上发布了基于i n t e rx 8 6 体系结构的l n i u x 源代码,从此以后,奇迹 开始发生了。由于l i n u x 具有结构清晰、功能简捷等特点,许多大专院校的学生和科 研机构的研究人员纷纷把它作为学习和研究的对象。在众多热心者的努力下,l i n u x 逐渐成为一个稳定可靠、功能完善的操作系统。一些软件公司,如r e d h a t ,i n f o m a g i c 等也不失时机地推出了自己的以l i n u x 为核心的操作系统版本,这大大推动了l i n u x 的商品化。在一些大的计算机公司的支持下,l i n u x 还被移植到以a l p h aa p x ,p o w e r p c ,m i p s 及s p a r e 等为处理机的系统上。l i n u x 的使用日益广泛,其影响力直逼u n i x 。 1 4 2 嵌入式l i u n x 操作系统的主要特点 作为一个操作系统,嵌入式l n i u x 几乎满足当今u n i x 操作系统的所有要求,因此, 4 它具有u n i x 操作系统的基本特征。 1 符合p o s i x1 0 0 3 1 标准0 1 p o s i x1 0 0 3 1 标准定义了一个最小的u n i x 操作系统接口,任何操作系统只有符合 这一标准,才有可能运行u n i x 程序。考虑到u n i x 具有丰富的应用程序,当今绝大多 数操作系统都把满足p o s i x1 0 0 3 1 标准作为实现目标,l i n u x 也不例外,它完全支持 p o s i x1 0 0 3 1 标准。另外,为了使u n i xs y s t e my 和b s d 上的程序能直接在l i n u x 上 运行,l i n u x 还增加了部分s y s t e m v 和b s d 的系统接口,使l i n u x 成为一个完善的u n i x 程序开发系统。 2 支持多用户访问和多任务编程 嵌入式l i n u x 是一个多用户操作系统,它允许多个用户同时访问系统而不会造成 用户之间的相互干扰。另外,嵌入式l i n u x 还支持真正的多用户编程,一个用户可以 创建多个进程,并使各个进程协同工作来完成用户的需求 3 采用页式存储管理 页式存储管理使嵌入式l n i u x 能更有效地利用物理存储空问,页面的换入换出为 用户提供了更大的存储空间。 4 支持动态链接 用户程序的执行往往离不开标准库的支持,一般的系统往往采用静态链接方式, 即在装配阶段就已将用户程序和标准库链接好,这样,当多个进程运行时,可能会出 现库代码在内存中有多个副本而浪费存储空间的情况。嵌入式l i n u x 支持动态链接方 式,运行时才进行库链接,如果所需要的库已被其它进程装入内存,则不必再装入, 否则才从硬盘中将库调入。这样能保证内存中的库程序代码是唯一的。 5 支持多种文件系统 嵌入式l i n u x 能支持多种文件系统。目前支持的文件系统有:e x t 2 ,e x t ,h p f s , m s d o s ,u m s d o s ,p r o c ,n f s ,m i n i x ,s m b ,u f s ,v f a t 等。 6 支持t c p i p ,s l i p 和p p p 在嵌入式l i n u x 中,用户可以使用所有的网络服务,如网络文件系统、远程登录 等。s l i p 和p p p 能支持串行线上的t c p i p 协议的使用, 除了上述基本特征外,嵌入式l i n u x 还具有其独有的特色:嵌入式l i n u x 上的大部 分程序是自由软件。这些软件是在自由软件基金会的g n u 计划下开发的。尽管如此, 来自世界各地的黑客、程序员,甚至商业公司也加入了l i n u x 软件开发的行列。g n u 软件的支持。l i n u x 支持大部分g n u 计划下的自由软件,包括g n u 和g c c 编译器、g a w k , g r o f f 和其他软件。 嵌入式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 具有的以上特点,适合我们有针对性的进行裁 剪和重构,使之具有微小内核、强实时性等特点。 1 5 本课题主要完成内容 本文目的在于研究嵌入式操作系统的移植和基于图形界面基础之上的数字图像处 理软件的丌发。重点讲述了整个系统的实现过程及软件的开发,并在此基础之上设计 和实现设备驱动程序,应用于视频图像的采集及数字图像的处理。本课题主要研究以 下四个内容: ( 1 ) 研究了常用的嵌入式操作系统的硬件组成,在此基础之上构架了一个基于嵌 入式的数字图象采集系统。 ( 2 ) 完成了b o o t l o a d e r 及l i n u x 在开发系统的移植。 ( 3 ) 实现了q t 在丌发系统上的移植并建立了基于本数字图象处理系统图形界面。 ( 4 ) 通过c 语言编程和q t 平台环境相结合的方法,完成了基于嵌入式的图象处理 系统。 6 第二章嵌入式系统开发平台 2 1 嵌入式系统硬件 在本论文中用到的嵌入式系统硬件平台主要由:嵌入式核心板、串口控制器、u s b 控制器以及触摸屏等硬件组成,其中嵌入式核心板又是由一片$ 3 c 2 4 1 0 处理器、f l a s h 存储器、s d r a m 存储器等组成的,下面分别对上述硬件进行详细的介绍。 2 1 1s a m s u n g $ 3 c 2 4 1 0 微处理器 $ 3 c 2 4 1 0 微处理器是一款由s a m s u n ge l e c t r o n i c sc o ,l t d 为手持设备设计的低功 耗、高度集成的内含一个a r m 9 2 0 核微处理器。 a r m 即a d v a n c e dr i s cm a c h i n e s 的缩写,a r m 公司是设计公司,是i p 核供应商, 本身并不生产芯片,靠转让设计许可由合作伙伴来生产各具特色的芯片。作为3 2 位嵌 入式r i s c 微处理器业界的领先供应商,a r m 公司的商业模式的强大之处在于它在世界 范围内有超过1 0 0 个合作伙伴,从而导致了大量的开发工具和丰富的第三方资源,他 们共同保证了基于a r m 处理器核的设计可以很快的投入市场。 a r m 处理器的三大特点: 小体积、低功耗、成本低、性能高 1 6 位3 2 位双指令集 全球众多合作伙伴 a r m 处理器本身是3 2 位设计,但也配备1 6 位指令集,以允许软件编码为更短的1 6 位指令。与等价的3 2 位代码相比,占用的存储器空间节省达3 5 ,然而保留了3 2 位系 统所有的优势( 例如访问一个3 2 位地址空间) 。t h u m b 状态与工f 常的a r m 状态之间的切 换是零开销的。如果需要,可逐个例程使用切换。这允许设计者完全控制其软件的优 化。 a r m 处理器当前5 个产品系列:a r m 7 、a r m 9 、a r m 9 e 、a r m i o 和s e c u r c o r e 。a r m 7 、 a r m 9 、a r m 9 e 和a r m i o 是4 个通用处理器系列。每个系列提供一套特定点性能来满足设 计者对功耗、性能和体积的需求。 其中,a r m 9 2 0 系列是高性能和低功耗特性方面最佳的硬件单元。它具有: 5 级流水线 处理速度为1 1 m i p s m h z 全性能m m u 指令和数据c a c h e 7 高速a f f b a 基于总线的接口 其中,a m b a 总线是一个用于s o c 设计构架的开放标准。它很快崛起并成为构建s o c 和开发i p 库的事实标准。目前,a m b a 先进的高性能总线( a h b ) 接i = 1 正由所有新的a r m 处理器核提供支持,设计者能够开发具有全球同步设计的系统。通过提供总线解决方 法,多层a h b 代表了一个重要的进展,总线解决方法适用于多主机系统,减少了延迟 时间并增加了带宽。多层a h b ( 即a m b a ) 完全与当i i 的a h b 规范兼容。 $ 3 c 2 4 1 0 处理器的组成结构如图2 1 所示: m m u 双8 k bc a c h e 嵌入式i c e e t m 9 接口 a r m v 4 t t h u m b 扩充 a s b 接口 图2 1a r m 9 2 0 tr e v l 开放平台处理器核结构图 $ 3 c 2 4 1 0 处理器是s a m s u n g 公司基于a r m 公司的a r m 9 2 0 处理器核,采用0 1 8 u m 制造工艺的3 2 位微处理器。该处理器拥有:独立的1 6 k b 指令c a c h e 和1 6 k b 数据c a c h e , m m u ,支持t f t 的l c d 控制器,n a n df l a s h 控制器,3 路u a r t ,4 路d 姒,4 路带p 帆 的t i m e r ,i o 口,r t c ,8 路1 0 位a d c ,t o u c h s c r e e n 接i = 1 ,i i c b u s 接口,i i s - b u s 接口,2 个u s b 主机,1 个u s b 设备,s d 主机和m m c 接口,2 路s p i 。s 3 c 2 4 1 0 处理器 最高可运行再2 0 3 m h z 下。 $ 3 c 2 4 1 0 的功能模块结构图如图2 2 所示。 $ 3 c 2 4 1 0 微处理器采用2 7 2 脚f b g a 封装,内含一个a r m 9 2 0 核和如下片内外围: 1 6 k b 一体化的c a c h e m m u l c d 控制器( 支持s t n t f t ) 4 路d m a 3 路u a r t 1 路i i c 和1 路i i s 2 路v 1 1u s b ( h o s t d e v i c e ) 4 路p w m 和1 个内部时钟控制器 看门狗 1 1 7 位通用i o ,2 4 路外部中断 8 路a d c r t c 片内锁相环,内部时钟可达2 0 0 m 2 1 2f l a s h 存储器 在嵌入式操作系统中,f l a s h 存储器是主要的存储单元,嵌入式系统里所用到的软 件系统,如b o o t l o a d e r 、嵌入式l i n u x 内核、r a m d i s k 压缩映像、图形应用程序以及 用户程序全部是存放在系统的6 4 m bn a n d f l a s h 存储器里的。f l a s h 存储器的数据宽度 为3 2 位,启动时映射到$ 3 c 2 4 1 0 的r o mb a n k o 里。 图2 2 $ 3 c 2 4 1 0 内部结构图 2 1 3s d r a m 存储器 $ 3 c 2 4 1 0 核心板系统中通常包含一个6 4 m bs d r a m ,用于设置程序堆栈和存放各种变 量。这个6 4 m bs d r a m 由两片1 6 位数据宽度s d r a m 存储器并联为3 2 位数据宽度的s d r a m 存储系统,并映射到$ 3 c 2 4 1 0 的s r o i s d r a mb a n k o ,地址从0 x 3 0 0 0 0 0 0 0 o x 3 3 f f f f f f 。 $ 3 c 2 4 1 0 微处理器内部的4 k b 一体化c a e h e s r a m ,通常被配置位c a c h e 以提高系统性 能。若要将其部分或全部用作告诉给片内的s r a m ,就必须在应用程序中重新配置相应 的特殊功能寄存器。 2 1 4 串行通讯口 串行通讯口是嵌入式操作系统中必不可少的组成部分,是嵌入式系统和上位机联 系的不可或缺的接口,嵌入式操作系统通过l i n u x 里的m i n i c o m 或者w i n d o w s 中的超 级终端,在设置了正确的波特率和通讯方式之后,可实现实时的通讯调试。 在底层板中通过2 片m a x 3 2 3 2 芯片控制2 个u a r t ( u n i v e r s a la s y n c h r o n o r e c e i v e r t r a n s m i t t e r ) 接口,完成与p c 的联机。 2 i 5u s b 接口 u s b 接口主要分为主、从u s b 接口,即u s bd e v i c e 和u s bh o s t ,系统中共提供了 两路u s b 接口。c n 7 位为d e v i c e ,c n 6 位为h o s t 。 2 1 7 系统电源 $ 3 c 2 4 1 0 系统内核采用1 8 v 供电,外围采用3 3 v 供电。因此开发板有外部电源提 供5 v 电源,经芯片可为外设提供2 5 a 电流,保证用户扩展的需要。而r t c ( 实时时钟) 考虑到开发板断电后继续工作,故采用锂电单独供电,就可实现对整个嵌入式系统的 供电要求。 2 2 触摸屏 触摸屏是整套系统中必不可少的组成部分,现在常见的触摸屏主要有四项电阻式 触摸屏、四项电容式触摸屏、红外触摸屏和表面声波触摸屏。以下主要介绍本嵌入式 系统中所应用到的四项电阻式触摸屏。 四项电阻式触摸屏的工作部分一般由两部分组成:两层透明的阻性导体层和两层导 体之间的隔离层电极。 触摸屏工作时,上下导体层相当于电阻网络,当某一层电极加上电压时,会在该网 络上形成电压梯度。如果有外力使得上下两层在某一点接触,则再电极未加电压的另 j 0 一层可以侧得出点处的电压,从而知道接触点处的坐标。例如,在顶层的电极( x + ,x 一) 上加上电压,则再顶层导体层上形成电压梯度,当有外力使得上下两层在某一点接触, 在底层就可以测得接触点处的电压,再根据该电压切换到底层电极( y + ,y 一) 上,并在底 层测量接触点处的电压,从而知道y 坐标。试验箱的触摸屏采用标准触摸屏,采用模 拟信号输入,使用m c 9 3 2 8 m x i 芯片的a s p 模块( a n a l o gs i g n a lp r o c e s s o r ) 提供的专用 于触摸屏输入的4 路9 位数模转换( a d c ) 结构,触摸屏置于s h a r pl c d 之上。另有2 路 9 位a d 用于测量电池电压。 触摸屏的驱动方式是采用a s p 字符设备模式进行驱动的,a s p 驱动是一个字符设备 的驱动,以下是a s p 驱动的具体方法: s t r u c tf i l e o p e r a t i o n st s f o p s2 o p e n :a s p _ o p e n , r e l e a s e :a s p _ r e l e a s e , r e a d :a s p r e a d , p o l l :a s p a 0 0 1 1 i o c t l :a s p i o e t l , : 2 3 嵌入式系统的交叉编译环境的建立 交叉编译环境是为了开发嵌入式l i n u x 软件时,如果需要在p c 上进行开发,需要 使用l i n u x 本身提供的强大的编译器( 如g c c ) 进行编译。而一般的嵌入式系统所使用的 c p u 和p c 上的c p u 有着不同的构架,这样就需要在p c 机上编译出适用于嵌入式设备 c p u 构架的软件,即在进行嵌入式系统开发之前需建立交叉编译环境。交叉编译环境由 多种部分组成,每一个针对嵌入式的系统及用户程序都有针对其本身的交叉编译环境。 b o o t l o a d e r 、l i n u x 、g u i 是几类典型的交叉编译环境。 2 3 1 建立b o o t i o a d e r 交叉编译环境 在本文中所使用的通用嵌入式交叉编译工具是m i z i 公司的嵌入式l i n u xc 交叉编 译工具a r m u n k n o w n l i n u x g c c ( 源码为a r m u n k n o w n 一1 i n u x g c c t a r g z ) 。介绍一下 b o o t l o a d e r 交叉编译环境建立的步骤。 1 先为交叉编译环境创建存储空间 先以r o o t 用户的身份登陆到l i n u x 下。 进入u s r l o c a l 目录,创建名为a r m 的目录: c d u s r 1 0 c a l m k d l ra r m 2 将源码解压到u s r l o c a l a r m 目录下 t a rj x v fa r m u n k n o w n 一1i n u x g c cc u s r l o c a l a r m 3 虽然已经将交叉编译环境存放到相应位置,但是交叉编译工具还没有被系统所 认识,所以需要对l i n u x 中的p a t h 变量进行修改。 修改p a t h 变量之后,就可以方便使用a r m u n k n o w n l i n u x g e e 编译器系统,把 a r m u n k n o w n 一1i n u x 工具链目录加入到环境变量p a t h 中,具体过程如下: 修改e t c p r o f il e 文件,添加p a t h m u n g e u s r l o c a l a r m 2 9 5 3 b i n 即可。 # p a t hm a n i p u l a t i o n i f i d u = 0 it h e n p a t h m u n g e s b i n p a t h m u n g e u s r s b i n p a t h m u n g e u s r l o c a l s b i n p a t h m u n g e u s r l o c a l a r m 2 9 5 3 b i n f i p a t h m u n g e u s r x l1 r 6 b i na f t e r 设置环境变量后,需要重启或注销一下,这样设置的环境变量才能生效。 2 3 2 建立嵌入式l i n u x 交叉编译环境 嵌入式l i n u x 交叉编译环境主要有以下几个部分组成: 1 嵌入式l i n u x 的源代码:l i n u x 一2 4 1 8 + r m k 2 2 连接器,汇编器和其他用于目标文件和档案的工具:b i n u t i l s 一2 1 0 1 3 g c c 编译器:g c c 一2 9 5 3 4 系统调用和基本函数的c 库:g l i b e 一2 2 3 5 系统调用和基本函数的针对嵌入式l i n u x 的c 库:g l i b c l i n u x t h r e a d s 一2 2 3 下面将对建立工作目录的基本过程进行详细的介绍: 1 首先,建立几个用来工作的目录: s p w d h o m e r o o t s m k d i re m b e d d e d 2 在这个项目目录e m b e d d e d 下建立三个目录b u i i d t o o l s 、k e r n e l 和t o o l s 。 b u i l d - t o o l s 一用来存放下载的b i n u t i i s 、g c c 和g l i b c 的源代码和用来编译这 些源代码的目录。 k e r n e l - 用来存放你的内核源代码和内核补丁。 t o o l s 一用来存放编译好的交叉编译工具和库文件。 1 2 $ c de m b e d d e d $ m k d i rb u i l d t o o l sk e r n e lt o o l s 执行完后目录结构如下: $ l se m b e d d e d b u i l d t o o l sk e r n e lt o o l s 3 输出环境变量 我们输出如下的环境变量以方便今后的编译。 $ e x p o r tp r j r 0 0 t = h o m e 1i a n g e m b e d d e d $ e x p o r tt a r g e t = a r m 一1i n u x $ e x p o r tp r e f i x = $ p r j r o o t t o o ls $ e x p o r tt a r g e t p r e f i x = $ p r e f i x $ t a r g e t $ e x p o r tp a t h = $ p r e f i x b i n :$ p a t h 环境变量可以定义在b a s h r c 文件中,这样当l o g o u t 或换了控制台时,就不需要 经常使用e x p o r t 来定义这些变量了。 这样,就可以在通过g l i b c 下的c o n f i g s u b 脚本来知道,t a r g e t 变量是否被支持, 具体操作如下: $ c o n f i g s u b a r m li n u x a f m u n k n o w n 1i n u x 。g n u 在本系统的环境中,c o n f i g s u b 在g li b a 一2 2 3 s c r i p t s 目录下。 4 建立编译目录 为了把源码和编译时生成的文件分开,一般的编译工作不在的源码目录中,要另 建一个目录来专门用于编译。用以下的命令来建立编译下载的b i n u t i l s 、g c c 和g l i b c 的源代码的目录。 $ c d $ p r j r o o t b u il d t o o ls $ m k d i rb u i i d b i n u t i l sb u i l d b o o t g c c b u i l d 。g e cb u i l d g l i b cg c c p a t c h b u i i d b i n u t i l s 一编译b i n u t i l s 的目录 b u i l d b o o t g c c 一编译g c c 启动部分的目录 b u i l d g l i b c 一编译g l i b c 的目录 b u i l d g c c 一编译g c c 全部的目录 g c c p a t c h 一放g c c 的补丁的目录 g c c 一2 9 5 3 的补丁有g c c 一2 9 5 3 - 2 p a t c h 、g c c 一2 9 5 3 - r i o f i x i n c p a t c h 和 g c c 一2 9 5 3 - r e t u r n t y p e f i x p a t c h 。可以状h t t p :w 礓、i n u x f r o m s c r a t c h o r g 1 载到这些补丁。 5 将下载的b i n u t i l s 一2 1 0 1 、g c c 一2 9 5 ,3 、g l i b c 一2 2 3 和 g l i b c 一1 i n u x t h r e a d s 一2 ,2 3 的源代码放入b u i l d - t o o l s 目录中 进行完如上操作后,可以用l s 命令看到b u i l d t o o l s 目录,有以下内容: $ l s b i n u t i l s 一2 1 0 1 t a r b z 2 b u i l d g e e g c c p a t c h b u i l d b i n u t l s b u i l d g l i b eg l i b c 一2 2 3 t a r g z b u il d b o o t g c c g e e 一2 9 5 3 t a r g z g li b c 一1i n u x t h r e a d s 一2 2 3 t a r g z 2 3 。3 建立嵌入式g u i 交叉编译环境啪 嵌入式常见的g u i 主要有:m i n i g u i 、o t e m b e d d e d 、m i c r o w i n d o w s 三种。这里主 要介绍本文应用到的q t e m b e d d e d 的交叉环境的建立。 一般来说, 基于o r e m b e d d e d 丌发的应用程序最终会发布到安装有嵌入式l i n u x 操作系统的小型设备上,尽管q t e m b e d d e d 也可以安装在u n i x 和w i n d o w s 系统上,但 是使用装有l i n u x 操作系统的p c 或者工作站来完成o t e m b e d d e d 丌发是最理想的环境。 首先,准备软件安装包:t m a k e 工具安装包、o t e m b e d d e d 安装包、q t 的x l l 版的 安装包。由于上述这些软件安装包有许多不同的版本,要注意由于版本的不同可能导 致这些软件再使用时造成冲突,所以需注意一些基本的安装原则。选择或下载了 o t e m b e d d e d 的某个版本的软件包之后,下一步要选择安装的o tf o rx 1 1 的安装包的 版本必须比最先下载的o t e m b e d d e d 的版本旧,这是因为q tf o rx l l 的安装包的两个 工具u i c 和d e s i g n e r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 动漫制作艺术总监绩效分析表
- IT公司项目经理项目交付与客户满意度绩效考核表
- 网络营销专员效果KPI考核表
- 健身教练培训及专业能力绩效考评表
- 提醒2026年年度付款计划的催办函(6篇)
- 食品保质期内容物变质检测标准操作指引
- 关于定期产品召开的会议通知(8篇)
- 启动售后服务流程的确认函件3篇范文
- 生产工艺优化提案征集函(3篇范文)
- 人力资源部自查报告(2篇)
- 《决策树与智能推理》教学课件-2025-2026学年人教版初中信息技术(人工智能专册)
- 2026年广东高中学业水平合格性考试生物试卷试题(含答案详解)
- 2026年春季开学“两案九制”完整文件,工作方案应急预案晨午检复课证明传染病防控健康教育消毒隔离制度等
- 市政污水管网工程量计算表
- 铁道车辆构造与检修教学课件-单元七-货车车体
- 《海南省工程勘察设计收费导则(试行)》
- 2026年超声乳化术配合培训视频资料
- 怀孕特征课件
- 国际贸易参展计划书模板
- 2025至2030中国饲料酸化剂行业深度研究及发展前景投资评估分析
- 狼疮脑病护理措施
评论
0/150
提交评论