基于ARM嵌入式Linux应用开发与实例教程

5星(超过95%的资源)
所需积分/C币:44 2017-09-09 03:49:08 55.61MB PDF
228
收藏 收藏
举报

本书详细地论述了嵌入式系统基础理论方面的知识,讲述了嵌入式系统的详细开发方法和步骤。
目录 38用户界面 17 467 uclinux内核运行方式…,148 381图形用户界面 118 68uC!inu支持的文件系统……148 382关鍵技术 [13 47嵌入式设备文件系统 148 9智能化用户界面. 4.7.1闪存介绍 148 39, I Agent技术 120 47.2第二版扩展文件系统 392 Agent技术与用户界面的 Ext2fs 149 结合 临时文件系统tmps 3,10主流嵌入式操作系统介纤.…124 48日志闪存文件系统版本2 3.0 1 windows ce 3.10.2 vxworks 48]概述 3.1039s9 26 482JFFs的设计原理,1150 310.4QNX…,… 26 49嵌入式用户界面… 152 31.5pC/OS.[1…,,,126 491KFre864X(带帧緩冲区 3. 10.6 Linux 125 支持的x11k64) 152 第4章嵌入式Linu介绍 128 4.9.2 Microwindows 4.9.3 FLTK,. 153 4.1 Linux的基础知识介绍 128 4.9.4 QtEmbedded 154 4.2Linuκ的进程与中断管理杋制 4.10 Microwindows剖析 42 I linux进程状态 4.10L分层设计 4,22[inux进程控制块… 4.102设备驱动层 155 4.23Lmu内核同步机制 133 4.103设备无关的图形引擎层.55 4,24Linu进程间的通信…,,14 4104API(基于Wi32).136 42.5Linu中断与定时服务 l37 40.5消息传递机制 156 4.3 Linux的调度机制 …137 4.10.6谢口操作 155 43 Linux的一般调度机制…138 4.07客户区域和纯对坐……157 43,2 RF-Linux的实时调度机俐.138 4108设备上下文 157 4.4[irux的文件系统管理.…139 4l1 Microwindows的移植中文化158 441文件系统管理 4.1.1针对 uClanⅨ所作的修改.158 442虚拟文件系统 140 4]l2中文化处理 158 45Linuκ下的用户界面…1241 412应用实例—电子文本阅读器.159 451 X Window简介,1141 4121功能要求以及方桌选择…159 4.52X服务器 n142 4122具体实现 59 4.53窗口管理器 143 413主流嵌入式inux 46嵌入式 Linux内核… 4,13,1 aT-Lipux,…,-,160 4.61 u China概还. 14 4.13.2 uCi 462 uClinux的内存管理 B45 4. 13.3 Embedix …161 463uCnu内核结构….146 4,134Ljux,16l 464内存保护……: 4 135 Pocketlinux 161 465编程接凵的改变 …147 4.136 MidoriLinux… 16t 466 u Clinux的应用程序库.147 437红旗嵌入式 Linux…12 基于ARM嵌入式LiH应用开发与实例教程 第5章嵌入式系统中的 Bootloader,163 72.1CoFF文件格式 Bootload概述 163 722ELF文件格式…11-1195 52 Bootloader设计分析.…163 72.3fat文件桦式 52]启动加载模式 164 73调试技术 522下载模式 731常见调试方法 196 5.3 Bootloader的启动及初始化 732內存调试… 197 53 L buullDader的 stage 73.3 MEMWATCH 197 5.1. 2 Bootloader i] stage2 734YAM[. 54 Bootloader难点分析 74系统调用跟踪… 200 55命令控制台…168 75程序调试 7.5.1 gdb 第6章交叉编译 7.52kgdb..20 6.编译原理 l69 75300pS……………:…03 61,1编译的一般过程 75系统引导和内核启动 61.2与编译器相关的程序.170 7.6.1 Bootloader程序的设讠 6.13编评器钓移植.1?1 与实现…:…:…111204 62词法分析 7.62硬件平台的通信…205 62.1词法的形式化播述.…171 76.3硬件平台初始化稈序 205 62.2诃法分析程序的设计 764妲件平台监控程序,.205 63语法分析 7.7 uClinux移植 ∴,206 63,自顶向下的话法分析 主76 77]第一阶段.……206 632目底向上的语法分析 7 722第二阶段 208 64中间代码 18 第8章设备驱动程序 65代码优化, Lq■即↓↓■ 66交叉繃译技术 8.1概述 2】0 185 67cCC变叉编详器 811设备类型 211 671CC编译流程 812设备号 l86 6.72Linwκ环境下的GCC交叉 81.3模央化编程 212 编详器…19 8.2设备文件接 213 68一个交叉编译器的生成实例.190 821用户访间接口 213 68.1可执行文科格式….190 82.2pen入冂点 682交叉编诉器 19] 823cse人口…… 213 683相关问题 824re3d入口点 214 82 入点 2|4 第7章嵌入式LinuⅨ的软件开发 826 ioctl入口 214 环境 1g4 83文牛操作 214 71交叉编译环境. l94 83.1 file operations结构 71.1宣装交叉编译环境 83.2fle结构] 712添加设备驱动和内核模块…195 84I操作 72可执行文件 195 84.1阻塞型[(0 217 目录 8. 4.2 select 21 63觖摸屏… 843异步触发 -}·hbL气LL卜{气气L■ 213 8网终设备……11…232 5中断处理 21y 8.7网络驱动的框架 8.51注册中断处理程序 87,2网卡驱动程序的加载方法.235 852返回值 220 8.73CS8900A芯片恃点……236 8.53多数 220 874CS8900A芯片驱动程序 8.54实现中断处理程序 221 的实现 86就用实例 +122 87.5网络设备驱动程序的编译243 g61字符型设备… 7.b网络驱动程序的测试.243 62按键 第二部分 第9章 GX-ARM9-2410EP说明….245 L02配置 mINIcar 9系统概述 245 103配景TFTP 6 92中路说明… ,,+…,248 l04配FNFs服务 61 921系统供电 249 第11章甚本实验部分 92.2系统配置 923复位逻转. 250 实验1编译 Bootloader…262 924启动分区 IOOT ROY 实验2锎译 Linux内核…266 BANKOF 出验3作文件系统及程序的烧写…83 9,2SLCD和触摸屏接囗 实验4烧写各部分到目标板…286 926键盘和SPI接 252 实验5交叉编译并运行简单程序 29L 97AD,DA转换接彐 9.2.8 Smart Media Card (Nand Flash 第12章高级实验部分… 297 ery)卡电碎 54 实验6简单驱动程序的编写 297 929 PCMCIA接凵 9210SD卡主机MMC)接1]…25 实验7LED点阵驱动 92.11IC接山 实验8中断试验. 306 9,212USB接[…256 实验9[CLED实验 320 92.13UART接口和rDA接口.257 文验101音频实验 第10章开发环境的建立 实验11RS485实验 355 14.1建主机开发环境.258 第一部分 绪论 近些年来,随着以计算机技术、通信技术为的信息技术的快速发展和 Intemet的广泛应 用,朕入式系统也受到了越来越多的重视。 1.入式系统的定义 嵌入式系统是指用于执行独立功能的专用计算机系统。它由微处理器、定吋器、微拴制 器、存储器、传感器等一系列微电子芯片及器件,和嵌入在存储器中的微型操作系统及控制 应用软件组成,共同实诸如实时控制、监视、管理、移动计算、数据处理等各种白动化处 理任务。嵌入式系统以应用为中心,以微电子技术、控制技术、计算机技术和通信技术为基 础,强调硬件和软件的协同性及整合性,软件及硬件叮剪裁,以满足系统对功能、战本、体 积和功耗等的要求 最简单的嵌入式系统仅有执行单功能的控制能力,在惟一的ROM中仅有实蚬单一功 能的控制程序,无微型操作系统。复杂的嵌入式系统,例如个人数字助理(PDA、手持电 脑〔HPC)等,「平具有与PC一样的功能。实质上与PC的区别仅仅是将微型操作系统与应用 软件嵌入在ROM或Fash存储器中,而不是存储于磁盘等载体中。很多复杂的嵌入式系统又 是由若T个小型嵌入式系统组成的。 2.嵌入式系统的硬件和软件特征 放入式系统的硬件必须根据兵体的应用任务,以功耗、成本、体积、可靠性和处理能力 等为指标来选择。嵌入式系统的核心是系统软件和应用软件,由于存储空间有限,因而要求 软件代码紧凑、叫靠,大多对实时性有严格要求。早期的嵌入式系统的设计方法,通常是采 用“硬件优先”原则。即在粗略估计软件任务需求的情况下,首先进行硬件设计与实现。然 后,在比硬仁平台之上,再进行软件设计。因而很难充分利用硬件和软件资源,取得最佳性 能效果。同时,一旦在测试时发现向题,需要对设计进行修改时,格个设计流程将重新进 行,对成本和设计周期芮影响很大。这种传统的设计方法只能改善硬件和软件各白的性能 在有限的设计空间不可能对系统做出较好的性能综合优化,在很大程度上依赖了设计者的经 验和反复实验。 20世纪90年代以来,随着电子系统功能的日益强人和微型化,系统设计所涉及的问题越 来越多,难度也越来越大。同时硬件和软件也个是截然分开的两个概念,而是紧密结合、 相互影响的。因而出现了软硬件协同设计 Codesign方法,即使用統一的方法和工具对款件和 硬件进行描述、综合和验证。在系统目标要求的指导下,通过综合分析系统软硬件功能及现 有资源,协同设计软硬件体系结构,以最大限度地挖掘系统的软硬件能力,避免由于独立设 计软硬件体系结构而带来的种种弊病,得到高性能低代价的优化设计方案 基于ARM嵌入式Lmux应用开发与实例教程 3.嵌入式操作系统 日前流行的嵌入式操作系统可以分为两类:一类是从运行在个人电脑上的操作系统向下 移植郅嵌入式系統,形成的嵌入式操作系統,如倣软公司的 Windows ce及其新版本,Sun 公司的Java操作系统,朗讯科扳公浒的 inferno,嵌入式 Linux等。这类系统经过个人电脑或 高性能计算机等产的长期运行考验,技术日趋成熟,其相关的标准和软件开发方式已被用 户普遍接受,同时积罴了丰窩的开发工具和应用软件资源。另一类是实时操作系统,如wind River公司的 Vx Works,ISI公司的pSOS,QNX系統软件公司的QNX,AT!公司的 ucleus,中图科学院凯思集闭的 Hopen嵌入式操作系统等,这类产品在操作系统的结构和实 现上都针对所面向的应用领域,对实时性和高可靠性等进行了精巧的设计,而且提供了独立 巾完备的系统廾发和测试二具,较多地应用在军用产品和王业控制等领域中。 Linux是20世纪9年代以后逐渐成熟的个开放源代码的操作系统。PC机上的 Linux 版木在全球数以百万计爱好者的合力开发下:得到了非常迅速的发展。20世纪9年代末, uClinux、 RT-LInux等相继推出,在嵌入式领域得到了广泛的关注,它们拥有大批的程序员和 现成的应用框序,是我们研究开发工作的宝贵资源 4.学习嵌入式系统的意义 从控制意义上说,嵌入式系统涉及系统最底层的、芯片级的信息处理与控制。在某种意 义上:对这些“微观”世界的了解与驾驭正是控制的真正日的。嵌入式系统与通常意义上的 控制系统在设计思路和总体架构方面有许多不同之处,而这些不同之处恰恰是传统控制学科 教学中较少教给学的。在当今信息化社会中,嵌入式系统在人们的日常工作和生活中所占 的价额,可能已超过传统意义的控制系统,这航是为什么我们的学生感到学的没有用,而有 用的又没有学的原因。在嵌入式系统及开发环境方面,目前仍有许多问题尚在研究发展之 中,例如,嵌入式系统的软硬件协同设计方法;面向多目标、多饪务的微内核嵌入式操作系 统;分布嵌入式系统的实时性问题,分布式计算,分布式信息交互与综合处理;以及嵌入式 系统的多目标交叉编译和交叉调试工具的研究等。 嵌入式系统”作为自动化学科中一门理论与实际密切结合的、知识与技术含量较高的 综合性专业课程,必将随荐信息产业的发展币逐渐趋于成熟。 第1章嵌入式系统的硬件构成 嵌入式系统以应用为中心,以计算机技术为基础,轼硬件可裁剪,是对功能、可靠性 成本、体积、功耗等有严要求的专用计算机系统。嵌入式系统的硬件一版包括处理器、存 储器、外设器件和电源等。 1.1嵌入式处理器 嵌入式系统的核心部件是各种类型的嵌入式处理器,据不完全统训,到2006年全世界嵌 入式处理器的品种总量已经超过1200多种,流行体系结构有30多个系列,其中8051体系的 占多半。生产8051单片机的半导体厂家有20多个,共350多种衍生产品,仅Phis公司 就有近100舜。现在几乎每个导体制造商都生产嵌入式处担器,越来越多的公司组建了自 的处理器设计部门嵌入式处理器的寻址空间…般介于64KB~16MB之间,处理速度介于 0l~2000MIPS之间,常用封装形式从8个引脚到144个引脚不等。 1.1.1嵌入式处理器的品种划分 根据目前现状,嵌入式处理器可以分成下面几类 嵌入式微处理器 嵌入式微处理器( Embedded Microprocessor Unit,EMPU的基础是通用计算机中的CPUJ 在应用中,将微处坪器装酗在专门设计的电路饭上,兵保留与嵌入式应用有关的功能,这样 可以人幅度减小系统的体积和功耗。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然 在功能上同标准微处理器基本一样,但在工作温度、旄电磁干扰、可靠性等方面一般都做了 增强。与工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低和可靠性高的 优点,但是在电路板上必须包括ROM、RAM、总线口和各种外设等器件。嵌入式微处理 器及其存储器、总线和外没等安装在一块电路板上,称为单板计算机,如 STD-BUS、PC0 等。近年来,德国、日本的一些公司乂开发出了类似“火柴盒”的或名片大小的嵌入式计算 机系列OEM产品,台湾省研华公司也推出了关似约模组化系统 SOM(Syslem On Module)。 嵌入式处理器且前主要有Am186/88、386EX、SC-400, Power PC、68000,MPS和 ARM系列等。 嵌入式微理器根据指令体系的不同,又可分为CSC和RSC两类。大家熟悉的大多数 台式PC机都是使用CISC微处理器,如Intl的x86。RSC结构体泰有两大主流: Silicon Graphics公司(砗谷图形公司)的MPS技术,ARM公司的 Advanced RisC Machines技术。此 外 Hitach日立公司)也有自匚的一套RSC技术 Superl RISC和CSC是目前设计制姓徽微处器的两种典型技术,虽然它们都试图在体系结构 操怍运行、软件硬件、編译时间和运行时间等诸多因素中做出某种平衡,以求达到高效的目 的,但采用的方法不同,因此,在很多方面差异较大,主要表现在以下几个与面。 基于ARM嵌入式imux应用开发与实例教程 (1)指令系統 RISC设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效的特色。 对不常洱的功能,则通过组合指令来完成、因此,在RIsC机器上实现特殊功能时,效率可能 较低。但可以利用流水技术和超标量技术加以改进和弥补。而ISC计算机的指令系统比较丰 富,有专用指令*完成特定的功能。因此,处理特殊任务时的效率较高 2)存储器操作 RSC对存储器彙作有限制,使控制简单化;而CISC.机器的存储器操作指令多,操作 直接。 3)程序 RSC汇编諳亡程序一般需要较大的内存空间,实特殊功能的程序复杂,不易设计;而 CISC汇编语言程序编程相对简单,科学计算及复杂操作的程序设计相对容易,效率较高。 (4)中断 RISC机器在一条指令执行的适地方可以响应中断;而CISC机器是在一条指令执行结 柬后才响应中断。 (5] CPU RISC CPU包含较少的单元电路,因前积小、功耗低: CISC CPU包含丰富的电路单 因而功能强、面积大、功耗大。 (6)设计周期 RISC微处理器结构简单,布局紧凑,设计周期短,且易于采用最新技术:CISC微处理 器结构复杂,设计周期长 (7)用户使用 RISC微处理器结构简单,指令规整。性能容易把握,易学易用:CISC徹处理器结构复 杂,功能大,容易实现特殊功能、 8)应用范围 由于RISC指令系统的确定与特定的应用领域有关,故RsC机器更适合于专用机:而 ClSC机器则吏适合于通用机。 2.嵌入式微控制器 嵌入式微挖制器( Microcontroller unit,MCU乂称单片机,颇名湛义,就是将整个计算机 系统集戌到一块芯片宀。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成 ROMEPROM、RAM、Fash、总线、总线逻辑、定时计数器、 WatchDog、FO、串行∏、脉 宽调制输出、ΔD、DA等各和必要的功能模块。为适应不同的应用需求,一般一个系列的单 片机具有多种行尘产品,每种行尘产品的处理器内核都是一样的,不同之处在于存储器和外 设的配置及對装。这样可以使单片机最大限度地同应用需求相匹配,从而减少功耗和成本。 与嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和 成本下降、可靠性提髙。微控制器是目前嵌入式系统工业的主流。徹控制器的片上资源一般 比较丰肓,适合于控制,因此称为微控制器。 嵌入式微控制器目前的品种和数量最多,比较有代表性的通用系列包括8051、P51XA、 MCS-251、MCS969%/296、C166/167、MC68HC05/11216和68300等。另外还有许多半 嵌入式系統的件构 通用系列,如支持USB接口的MCU8XC9301931、C540和C54l。目前MCU占嵌入式系统 约70%的市场份额 特别值得注意的是,近年来提供x86微处理器的著名厂商AMD公司将AM86 C/CHACU 等嵌入式处理器称之为 Microcontroller, Motorola公司把以 Powcr PC为基础的PC505和 PPC555亦列入单片机行列。们公司亦将其TMs32C2XXX系列DSP做为MCU进打 推 3.嵌入式DsP处理器 DsP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较 高,指令执行速度也较高。在数字滤波、FFT和谱分析等方面,DSP算法正在大量进入嵌入 式领域,D$P应用正从在通用单片机中以普通指令实现DSP功能过渡到采用嵌入式DSP处理 器。嵌入式DSP处理器有两个发展来源,一是DsP处理器经过单片化、EMC改造和增加片 上外设成为嵌入式DSP处理器,II的TMs320C2000℃5000等属于此范畴;二是在通用单片 机或片上系统(SOC)中增加DSP协处理器,例如nel的MCs-2% 推动嵌入式DSP处理器( mbedded Digital Signal Processor,EDsP发展的一个重要因素是 献入式系统的智能化,例如各种带有智能逻辑的消费类产品,生物信息识别端,带有邡解 密算法的键盘,ADSL按入,实时语音压解系统,虚拟现实显示等。这类智能化算法一般都 是运算量较大,特别是向量运算、指针线性浮址等较多,这些正是DsP处理器的长处 所在。 嵌入式DSP处器比较有代表性的产品是 Texas instruments的TMS320系列和 Motorola 的DSP5600系列。TM8320系列处理器包括用于控制的C200系列,移动通信的C5000系 列,以及性能更高的C6000和C8000系列。DSP56000目前已经发展成为DP56000 DSH56100、DS56200和DSP56300等几个不同系列的处理器 DSP的设计者们把重点放在了处理连续的数据流上。在嵌入式应用中,如果强调对连续 的数据流的处理及高精度复杂运算,则应该选用DSP器件 4.嵌入式片上系统 随着LSI设计的普及化及半导体工艺的迅速发展,可以在一块硅片上实现一个更为复杂 的系统,这就是 System On Chip(SOC。各种通用处理器内核将作为SO℃设计公司的标准 库,和许多其他嵌入式系统外设一样,成为ⅥI设计中一种标准的器供,用标准的HDL 等语言描述,存储在器件库中。用户只需定义出整个应用系统,仿真通过后就可以将设计图 交给半导体工厂制作样品。这样除个别无法集成的器件以外,整个嵌入式系统大部分均可集 成到一块或儿块怂片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠 性扑常有利。 SoC可以分为通用和专用两类。通用系列包括 Motorola的 M-Core,某些ARM系列器 , Echelon和 Motorola联合研制的 Neuron芯片等。专用SOC一般专用于某个或某类系统 中,不为一般用户所知。一个有代表性的产品是 Philips的 SmartxA,它将XA单片机内核和 支持超过2048位复杂RSA算法的CCU单元制作在一块娃片上,形成一个可加载Java或C 语亩的专用的SOC,可用公众互联网{如 Internet安全)方面。

...展开详情
试读 127P 基于ARM嵌入式Linux应用开发与实例教程
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
cupfire 不是我想要的版本,但是很不错
2019-11-25
回复
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
上传资源赚钱or赚积分
最新推荐
基于ARM嵌入式Linux应用开发与实例教程 44积分/C币 立即下载
1/127
基于ARM嵌入式Linux应用开发与实例教程第1页
基于ARM嵌入式Linux应用开发与实例教程第2页
基于ARM嵌入式Linux应用开发与实例教程第3页
基于ARM嵌入式Linux应用开发与实例教程第4页
基于ARM嵌入式Linux应用开发与实例教程第5页
基于ARM嵌入式Linux应用开发与实例教程第6页
基于ARM嵌入式Linux应用开发与实例教程第7页
基于ARM嵌入式Linux应用开发与实例教程第8页
基于ARM嵌入式Linux应用开发与实例教程第9页
基于ARM嵌入式Linux应用开发与实例教程第10页
基于ARM嵌入式Linux应用开发与实例教程第11页
基于ARM嵌入式Linux应用开发与实例教程第12页
基于ARM嵌入式Linux应用开发与实例教程第13页
基于ARM嵌入式Linux应用开发与实例教程第14页
基于ARM嵌入式Linux应用开发与实例教程第15页
基于ARM嵌入式Linux应用开发与实例教程第16页
基于ARM嵌入式Linux应用开发与实例教程第17页
基于ARM嵌入式Linux应用开发与实例教程第18页
基于ARM嵌入式Linux应用开发与实例教程第19页
基于ARM嵌入式Linux应用开发与实例教程第20页

试读结束, 可继续阅读

44积分/C币 立即下载 >