出版时间:2010-6 出版社:北京大学出版社 作者:丁文龙,李志军 主编 页数:305
前言
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式系统~般山嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序4个部分组成,用于实现对其他设备的控制、监视或管理等功能。随着现代社会信息化进程的加快,嵌入式系统被广泛地应用于军事、家用、工业、商业、办公、医疗等社会各个领域。学习嵌入式系统要以应用为导向,因此,建议学习者首先选择一款主流芯片,以点带面、循序渐进地学习。目前,以ARM为核心的嵌入式技术逐渐成为我国嵌入式教学的主流。ARM作为一种32位的高性能、低成本的嵌入式RISC微处理器,已得到最广泛的应用。NXP公司推出的基于ARM7TDMI(-s)的32位微控制器LPC2000系列,具有很高的性价比,其接口模块丰富,使用范围广,在PRO TEus环境中可仿真,相比其他的嵌入式处理器更便于学习和掌握。pC/OS-Ⅱ是著名的源代码公开的嵌入式实时操作系统,是专门为嵌入式系统的应用而设计的,主体代码采用ANSI(美国国家标准学会)C语言编写,十分易于应用和移植。uc/OS-Ⅱ的特点在于源代码小且完全公开,有详尽的解释,科研和教学可免费使用。正因为其小,才便于学习、研究、理解和掌握,也因为其小,更便于广大的低端用户和小系统使用。
内容概要
本书全面、系统地介绍ARM7TDMI处理器的体系结构、编程模型、指令系统,以及ADS1.2、Real View MDK、PROTEUS三个开发环境。同时,还以基于ARM7TDMI的应用处理器LPC2124为核心,详细介绍了ARM嵌入式系统设计、相关接口技术、嵌入式软件设计等内容。接口技术的内容涵盖了GPIO、中断、定时器、LIART、RTC、A/D、I2C、SPI、PWM,并列举了大量实例。本书还介绍了μC/OS-Ⅱ软件体系结构、文件结构及移植规划等方面的内容。在第9章提供了一个综合实例。 本书从教学和应用的角度出发,具有较强的系统性和实用性。内容充实,图文并茂,选材精炼,论述由浅入深,每章除配有大量的例子和思考与练习题外,还配备了一定量的实例分析。 本书可作为高等院校计算机科学与技术、通信工程、电子信息工程、自动化等水科专业的嵌入式系统课程教材,也可作为嵌入式应用工程技术人员的参考书。
书籍目录
第1章 嵌入式系统概述 1.1 嵌入式系统 1.1.1 嵌入式系统定义 1.1.2 嵌入式系统特点 1.1.3 嵌入式系统应用 1.2 嵌入式系统组成结构 1.2.1 嵌入式系统硬件平台 1.2.2 嵌入式系统软件结构 1.3 嵌入式系统开发基小流程 1.4 嵌入式系统发展趋势 1.5 学习嵌入式系统的建议 本章小结 思考与练习第2章 ARM体系结构 2.1 ARM简介 2.1.1 ARM公司简介 2.1.2 ARM体系结构的发腱 2.1.3 ARM处理器系列简介 2.2 ARM7编程模型 2.2.1 ARM7TDMI功能图 2.2.2 ARM处理器工作状态 2.2.3 ARM处理器工作模式 2.2.4 ARM内部寄存器 2.2.5 指令长度及数据类型 2.2.6 存储器格式 2.2.7 3级流水线 2.2.8 异常处理 本章小结 思考与练习第3章 ARM7TDMI(-S)指令系统 3.1 ARM处理器寻址方式 3.2 ARM处理器指令概述 3.2.1 ARM指令的特点 3.2.2 ARM指令集分类 3.2.3 指令格式与条件码 3.3 ARM指令集 3.3.1 加载/存储指令 3.3.2 数据处理指令 3.3.3 乘法/乘加指令 3.3.4 跳转指令 3.3.5 程序状态寄存器访问指令 3.3.6 协处理器指令 3.3.7 异常中断指令 本章小结 思考与练习第4章 基于ARM的嵌入式软件设计 4.1 嵌入式系统程序设计方法 4.1.1 嵌入式软件特点 4.1.2 嵌入式软件设计流程 4.2 ARM汇编语伪指令 4.2.1 指导性伪指令 4.2.2 数据定义伪指令 4.2.3 输出撤告型伪指令 4.2.4 符号定义伪指令 4.2.5 汇编语言控制伪指令 4.2.6 与ARM汇编语言组合的伪指令 4.3 ARM汇编语言程序设计 4.3.1 ARM汇编语言规范 4.3.2 ARM编语言程序结构 4.3.3 ARM汇编程序设计实例 4.4 ARMC语言程序设计 4.4.1 预处理伪指令 4.4.2 函数及函数库 4.4.3 ARMC语言程序设计实例 4.5 ARM C语言与汇编语言混合编程 4.6 ARM程序结构分析 本章小结 思考与练习第5章 嵌入式系统常用开发工具 5.1 ARM开发工具ADS1.2 5.1.1 ADS1.2集成开发环境的组成 5.1.2 工程的创建、编译和链接 5.1.3 使用AXD调试代码 5.2 ARM开发工具RealView MDK 5.2.1 RealView MDK简介 5.2.2 RealView MDK软件的特点 5.2.3 ULINK2仿真器简介 5.2.4 工程的创建、编译和链接 5.2.5 工程的调试 5.2.6 映像文件下载 5.3 ARM仿真设计软件PROTEUS 5.3.1 ISIS编辑环境 5.3.2 PROTEUS设计与仿真流程 5.3.3 PROTEUS设计与仿真实例 本章小结 思考与练习第6章 基于LPC2000系列的嵌入式应用开发实例 6.1 LPC2000系列处理器简介 6.1.1 LPC2000系列处理器特性 6.1.2 LPC2000系列处理器结构 6.1.3 LPC2000系列处理器引脚配置 6.2 存储器管理 6.2.1 片内存储器 6.2.2 外存储器 6.2.3 存储器映射 6.2.4 存储器重映射及引导块 6.2.5 系统启动代码分析 6.3 GPIO端口功能及应用 6.3.1 引脚连接模块寄存器 6.3.2 GPIO寄存器描述 6.3.3 应用实例 6.4 中断控制功能及应用 6.4.1 向量中断控制器概述 6.4.2 VIC寄存器描述 6.4.3 VIC基本使用方法 6.4.4 外部中断 6.4.5 外部中断寄存器描述 6.4.6 应用实例 6.5 定时器功能及应用 6.5.1 定时器器功能及应用 6.8.1 A/D转换器概述 6.8.2 A/D寄存器描述 6.8.3 A/D基奉操作 6.8.4 应用实例 6.9 I2C接口功能及应用 6.9.1 I2C接口描述 6.9.2 I2C寄存器描述 6.9.3 I2C操作模式 6.9.4 应用实例 6.10 SPI接口功能及应用 6.10.1 SPI接口描述 6.10.2 SPI奇存器描述 6.10.3 SPI操作模式 6.10.4 应用实例 6.11 PWM功能及应用 6.11.1 PWM概述 6.11.2 PWM寄存器描述 6.11.3 PWM基奉操作 6.11.4 应用实例 本章小结 思考与练习第7章 嵌入式实时操作系统μC/OS-Ⅱ基础 7.1 嵌入式操作系统概述 7.1.1 嵌入式操作系统 7.1.2 典型的嵌入式操作系统 7.2 嵌入式实时操作系统μC/OS-Ⅱ 7.2.1 μC/OS-Ⅱ概述 7.2.2 μC/OS-Ⅱ特点 7.2.3 μC/OS-Ⅱ软件体系结构 7.2.4 μC/OS-Ⅱ文件结构 7.3 μC/OS-Ⅱ内核结构 7.3.1 临界段的处理 7.3.2 任务和任务状态 7.3.3 任务控制块 7.3.4 任务调度 7.3.5 中断服务 7.3.6 时钟节拍与时间管理 7.3.7 μC/OS-Ⅱ的初始化 7.3.8 μC/OS-Ⅱ的启动 本章小结 思考与练习第8章 μC/OS-Ⅱ在ARM7上的移植 8.1 移植规划 8.1.1 编译器选择 8.1.2 ARM7.工作模式选择 8.1.3 支持的指令集 8.2 移植μC/OS-Ⅱ 8.2.1 编写OS_CPU_H 8.2.2 编写OS_CPU_C.C 8.2.3 编写0S_CPU_A.S 8.2.4 关于中断及时钟节拍 8.3 应用实例——移植μC/OS-Ⅱ到LPC2000 8.3.1 编写启动代码 8.3.2 挂接SWI软件中断 8.3.3 中断及时钟节拍中断 8.3.4 编写应用程序 本章小结 思考与练习第9章 综合实例——超声波测距仪设计 9.1 项目功能描述 9.1.1 实现功能 9.1.2 主要性能指标 9.2 总体设计 9.2.1 超声波测距原理 9.2.2 超声波速度的确定 9.2.3 超声波测距仪总体设计 9.3 硬件电路设计 9.3.1 元器件的选择 9.3.2 发射电路设计 9.3.3 接收电路设计 9.3.4 语音播报电路设计 9.3.5 LCD显示电路设计 9.4 程序设计 9.5 测试结果 本章小结 思考与练习参考文献
章节摘录
插图:选择处理器有两个前提条件,分别说明如下:(1)深入研究具体的嵌入式系统应用需求,分析后获取应用系统的性能指标。具体的应用需求决定着嵌入式处理器的性能选型。应用需求分析后,需要定义产品具备的基本功能和性能指标,如系统处理的数据量大小和处理实时性要求、系统正常运行时的工作环境、系统运行过程中可能遇到的突发事件、系统的尺寸大小和功耗指标等。(2)分析研究市场上各大厂商提供的各款嵌入式处理器的性能指标,如功耗、体积、成本、可靠性、速度、处理能力、电磁兼容性等。这些参数也是各个半导体芯片厂商之间竞争的热点。开发人员通过应用需求分析获取了产品的功能性和非功能性指标,研究了市场上嵌入式处理器的性能参数后,能够对嵌入式处理器做出较好的选择。嵌入式处理器选择的基本原则是满足具体功能性和非功能性指标需求的、市场应用反应良好的、硬件配置最少的嵌入式处理器。如简单的智能仪器仪表设计考虑使用8位单片机8051;和数字信号处理相关的选用DSP芯片;如果产品侧重于通信功能,可考虑选用Motorola公司的嵌入式处理器68K系列;如果产品功能比较齐全,可选用ARM芯片等。除了产品性能需求因素之外,选择嵌入式处理器时也需要考虑开发人员对此系列处理器的熟悉程度。因为不同公司开发的嵌入式处理器差别较大,从一类处理器转移到另一类处理器的难度比同一系列不同处理器间的转移难度大得多,风险高得多。12.2 嵌入式系统软件结构对于包含有操作系统的嵌入式系统来讲,嵌入式系统软件结构包含4个层次:设备驱动层、实时操作系统RTOS层、应用程序接口API层、应用程序层。1.设备驱动层设备驱动层为上层软件提供了设备的操作接口。上层软件不用理会设备的具体内部操作,只需调用设备驱动层程序提供的接口即可。驱动层程序一般包括硬件抽象层HAL板级支持包BSP和设备驱动程序。1)硬件抽象层硬件抽象层是位于操作系统内核与硬件电路之问的接口层,其目的在于将硬件抽象化。
编辑推荐
《ARM嵌入式系统基础与开发教程》:21世纪全国本科院校电气信息类创新型应用人才培养规划教材。
图书封面
评论、评分、阅读与下载