关于本书的内容有任何问题,请联系 王威
目 录 第 1章 嵌入式系统基础知识 1 1.1 嵌入式系统的概述 1 1.1.1 嵌入式系统简介 1 1.1.2 嵌入式系统的特点 2 1.1.3 嵌入式系统的发展 3 1.2 嵌入式系统的组成 5 1.2.1 嵌入式系统的硬件组成 5 1.2.2 嵌入式系统的软件组成 6 1.3 嵌入式操作系统举例 6 1.3.1 商业版嵌入式操作系统 6 1.3.2 开源版嵌入式操作系统 7 1.4 嵌入式系统开发概述 8 小结 13 思考与练习 13 第 2章 ARM技术概述 14 2.1 ARM体系结构的技术特征及发展 14 2.1.1 ARM公司简介 14 2.1.2 ARM技术特征 15 2.1.3 ARM体系结构的发展 16 2.2 ARM微处理器简介 18 2.2.1 ARM7处理器系列 19 2.2.2 ARM9处理器系列 19 2.2.3 ARM9E 处理器系列 20 2.2.4 ARM11处理器系列 20 2.2.5 SecurCore处理器系列 20 2.2.6 StrongARM和Xscale处理器系列 21 2.2.7 MPCore处理器系列 21 2.2.8 Cortex处理器系列 21 2.3 ARM微处理器结构 23 2.4 ARM微处理器的应用选型 23 2.4.1 ARM芯片选择的一般原则 24 2.4.2 选择适合教学的ARM芯片 24 2.5 Cortex-A8内部功能及特点 28 2.6 数据类型 28 2.6.1 ARM的基本数据类型 28 2.6.2 浮点数据类型 29 2.6.3 存储器大/小端 29 2.7 Cortex-A8内核工作模式 30 2.8 Cortex-A8存储系统 31 2.8.1 协处理器 32 2.8.2 存储管理单元 33 2.8.3 高速缓冲存储器 33 2.8.4 NEON技术 34 2.8.5 安全域(TrustZone) 34 2.9 流水线 34 2.9.1 流水线的概念与原理 34 2.9.2 流水线的分类 35 2.9.3 影响流水线性能的因素 36 2.10 寄存器组织 37 2.11 程序状态寄存器 39 2.12 SAMSUNG S5PC100处理器介绍 41 小结 43 思考与练习 43 第3章 ARM的指令集合 44 3.1 ARM指令集 44 3.1.1 数据操作指令 44 3.1.2 乘法指令 51 3.1.3 Load/Store指令 53 3.1.4 跳转指令 59 3.1.5 状态操作指令 62 3.1.6 协处理器指令 63 3.1.7 异常产生指令 65 3.2 ARM指令的寻址方式 67 小结 71 思考与练习 71 第4章 GNU汇编伪指令集 72 4.1 GNU汇编器的平台无关伪指令 72 4.1.1 伪指令概念 72 4.1.2 符号定义伪指令 73 4.1.3 数据定义伪指令 74 4.1.4 汇编控制伪操作 76 4.1.5 杂项伪操作 78 4.2 GNU汇编器支持的ARM伪指令 80 4.2.1 ADR伪指令 80 4.2.2 ADRL伪指令 80 4.2.3 LDR伪指令 81 4.3 ARM汇编语言的程序结构 82 4.3.1 汇编语言的程序格式 82 4.3.2 汇编语言的子程序调用 82 4.3.3 过程调用标准AAPCS/ATPCS 83 4.3.4 汇编语言程序设计举例 84 4.4 汇编语言与C语言的混合编程 84 4.4.1 GNU内联汇编 85 4.4.2 C和汇编的混合编程 87 小结 88 思考与练习 89 第5章 ARM集成开发环境搭建 90 5.1 FS-JTAG仿真器介绍 90 5.2 开发环境搭建 91 5.2.1 开发工具的安装 91 5.2.2 创建一个新工程 93 5.2.3 调试工程 95 小结 96 思考与练习 96 第6章 GPIO编程 97 6.1 GPIO功能介绍 97 6.2 S5PC100芯片的GPIO控制器介绍 98 6.2.1 特性 98 6.2.2 GPIO分组预览 98 6.2.3 S5PC100的GPIO常用寄存器分类 98 6.2.4 S5PC100 I/O接口常用寄存器详解 99 6.3 S5PC100的GPIO的实例 100 6.3.1 电路原理 101 6.3.2 寄存器设置 101 6.3.3 程序编写 101 小结 102 思考与练习 102 第7章 ARM系统时钟及编程 103 7.1 S5PC100时钟域的划分 103 7.2 S5PC100时钟的产生过程分析 104 7.2.1 时钟的产生 104 7.2.2 模块对应的时钟域 105 7.3 S5PC100时钟源的选择 105 7.3.1 时钟来自于外部引脚 105 7.3.2 时钟来自于时钟管理单元(CMU) 106 7.4 S5PC100时钟的配置 106 7.5 S5PC100时钟配置寄存器描述 108 7.6 S5PC100时钟源配置示例 109 小结 110 思考与练习 110 第8章 ARM异常处理及编程 111 8.1 ARM异常中断处理概述 111 8.2 ARM体系异常种类 112 8.3 ARM异常的优先级 116 8.4 ARM处理器模式和异常 117 8.5 ARM异常响应和处理程序返回 117 8.5.1 中断响应的概念 117 8.5.2 ARM异常响应流程 118 8.5.3 从异常处理程序中返回 119 8.6 ARM系统中异常中断处理程序的安装 121 8.7 ARM的SWI异常中断处理程序设计 121 8.8 FIQ和IRQ异常中断程序设计 124 8.9 基于Cortex-A8内核的S5PC100异常程序设计 125 8.9.1 S5PC100中断机制分析 125 8.9.2 S5PC100中断处理程序实例 128 小结 132 思考与练习 132 第9章 串行通信接口 133 9.1 串行通信 133 9.1.1 串行通信与并行通信的概念 133 9.1.2 异步串行方式的特点 134 9.1.3 异步串行方式的数据格式 134 9.1.4 同步串行方式的特点 134 9.1.5 同步串行方式的数据格式 134 9.1.6 比特率、比特率因子与位周期 135 9.1.7 RS-232C串口规范 135 9.1.8 RS-232C接线方式 137 9.2 S5PC100异步串行通信 137 9.2.1 S5PC100串口控制器概述 137 9.2.2 S5PC100串口控制器寄存器 138 9.3 串口发送接收程序示例 142 9.3.1 电路连接 142 9.3.2 程序的编写 142 9.3.3 调试与运行程序 145 小结 145 思考与练习 145 第 10章 PWM定时器 146 10.1 S5PC100 PWM定时器 146 10.1.1 PWM定时器概述 146 10.1.2 PWM定时器特点 147 10.1.3 PWM定时器的寄存器 148 10.1.4 PWM定时器示例 152 10.2 S5PC100看门狗定时器 154 10.2.1 S5PC100看门狗定时器概述 154 10.2.2 看门狗定时器寄存器 155 10.2.3 看门狗定时器程序编写 156 小结 157 思考与练习 157 第 11章 A/D转换器 158 11.1 A/D转换器原理 158 11.1.1 A/D转换基础 158 11.1.2 A/D转换的技术指标 159 11.1.3 A/D转换器类型 160 11.1.4 A/D转换的一般步骤 164 11.2 S5PC100 A/D转换器 164 11.2.1 S5PC100 A/D转换器概述 164 11.2.2 S5PC100 A/D控制器寄存器 165 11.3 A/D转换器示例 167 11.3.1 电路连接 167 11.3.2 程序的编写 167 11.3.3 调试与运行结果 168 小结 168 思考与练习 168 第 12章 实时时钟RTC 169 12.1 RTC介绍 169 12.2 RTC控制器 170 12.3 RTC控制器寄存器详解 170 12.4 RTC应用示例 173 小结 174 思考与练习 174 第 13章 I2C总线 175 13.1 I2C总线 175 13.1.1 I2C总线介绍 175 13.1.2 I2C总线术语 176 13.1.3 I2C总线位传输 176 13.1.4 I2C总线数据传输 177 13.1.5 I2C总线寻址方式 177 13.1.6 快速和高速模式 178 13.2 I2C总线控制器 179 13.2.1 S5PC100下的I2C控制器介绍 179 13.2.2 I2C总线控制寄存器详解 179 13.3 I2C总线应用示例 180 13.3.1 电路原理分析 180 13.3.2 代码实现 182 小结 183 思考与练习 183 第 14章 存储器接口 184 14.1 Flash ROM介绍 184 14.2 NOR Flash操作 186 14.2.1 AM29LV160D芯片介绍 186 14.2.2 AM29LV160D字编程操作 187 14.2.3 AM29LV160D扇区/块擦除操作 188 14.2.4 AM29LV160D芯片擦除操作 188 14.2.5 AM29LV160D与S5PC100的接口电路 189 14.2.6 AM29LV160D存储器的程序设计 190 14.3 NAND Flash操作 192 14.3.1 芯片介绍 192 14.3.2 读操作过程 193 14.3.3 擦除操作过程 194 14.3.4 写操作过程 195 14.4 S5PC100中NAND Flash控制器的操作 195 14.4.1 S5PC100中NAND Flash控制器概述 195 14.4.2 S5PC100中NAND Flash控制器寄存器详解 196 14.5 S5PC100 NAND Flash接口电路与程序设计 198 14.5.1 K9F2G080U和S5PC100的接口电路 198 14.5.2 S5PC100控制K9F2G080U的程序设计 198 小结 202 思考与练习 202 第 15章 SPI接口 203 15.1 SPI总线协议理论 203 15.1.1 协议简介 203 15.1.2 协议内容 203 15.2 SPI控制器详解 205 15.2.1 S5PC100的SPI控制器简介 205 15.2.2 时钟源控制 206 15.2.3 寄存器详解 206 15.3 SPI接口应用示例 208 小结 214 思考与练习 214 第 16章 DMA控制器 215 16.1 PL330原理概述 215 16.1.1 DMAC简述 215 16.1.2 S5PC100下的DMAC模型 216 16.1.3 PL330简述 217 16.2 PL330详解 219 16.2.1 PL330指令集 219 16.2.2 相关寄存器详解 223 16.3 S5PC100 PL330示例 224 小结 228 思考与练习 228 第 17章 LCD接口技术 229 17.1 LCD控制器原理概述 229 17.1.1 LCD控制器介绍 229 17.1.2 S5PC100的 LCD控制器介绍 230 17.1.3 S5PC100的LCD控制器操作 231 17.1.4 LCD控制器寄存器 233 17.2 LCD控制器应用示例 237 小结 241 思考与练习 241 第 18章 CAMIF接口技术 242 18.1O V9650介绍 242 18.1.1 芯片功能描述 242 18.1.2 OV9650物理参数 243 18.1.3 OV9650寄存器详解 244 18.2 SCCB总线 246 18.2.1 SCCB协议介绍 246 18.2.2 SCCB的总线编程 247 18.3 CAMIF接口详解 248 18.3.1 基于S5PC100的CAMIF接口介绍 248 18.3.2 S5PC100 CAMIF寄存器详解 250 18.3.3 CAMIF应用示例 253 小结 256 思考与练习 256 参考文献 257
本书借鉴了很多国内优秀培训机构的思路,力求使读者在没有相关背景知识的前提下,也可以学习嵌入式开发。本书分为两篇...
本书重点介绍嵌入式Linux应用开发的基本概念和核心理论。全书分为10 章,包括嵌嵌入式系统基础、嵌入式Lin...
作为一种32位高性能、低成本的嵌入式RISC微处理器,ARM已经成为应用最广泛的嵌入式处理器。目前Cortex...
本书较为全面地介绍了嵌入式开发中C语言编程的基础知识。全书共11章,内容包括嵌入式Linux C语言开发工具、...
本书较为全面地介绍了嵌入式操作系统,全书共10章,分别为嵌入式Linux 操作系统简介、嵌入式Linux操作系...
本书按照项目导向、任务驱动的模式编写,突出PLC 的实际应用,重点介绍三菱公司生产的FX系列PLC 的工作原理...
本书针对人工智能发展的实际需求,以培养学生逻辑思维和逻辑设计能力,以及严谨的科学态度为目标,探索性地将模拟电子...
本书较为全面地介绍了智能制造系统。全书共6章,主要介绍智能制造、制造系统、智能制造系统的概念与内涵,智能制造系...
本书较为全面地介绍集成电路封装与测试技术知识。全书共8 个项目,包括认识集成电路封装与测试、封装工艺流程、气密...
本书以培养学生分析问题、解决问题的能力和动手能力为主导,将模拟电子技术、数字电子技术和计算机相关知识前后呼应并...
我要评论