新書推薦:
《
家书中的百年史
》
售價:HK$
79.4
《
偏爱月亮
》
售價:HK$
45.8
《
生物安全与环境
》
售價:HK$
56.4
《
泥土:文明的侵蚀(城市与生态文明丛书)
》
售價:HK$
84.0
《
医用化学(第三版)
》
售價:HK$
57.3
《
别怕,试一试
》
售價:HK$
67.9
《
人才基因(凝聚30年人才培育经验与智慧)
》
售價:HK$
103.4
《
深度学习详解
》
售價:HK$
114.8
|
編輯推薦: |
关注理论知识结构完整性,重视实践前瞻性环节;
内容基于流行的ARM Cortex-A9处理器,丰富实用的项目开发案例;
所有实验均可通过FS-JTAG仿真器;
FS4412硬件平台验证
|
內容簡介: |
作为一种32位高性能、低成本的嵌入式RISC微处理器,ARM目前已经成为应用最广泛的嵌入式处理器。目前Cortex-A系列处理器已经占据了大部分中高端产品市场。在全面介绍Cortex-A9处理器的体系结构、编程模型、指令系统及开发环境的同时,以基于Cortex-A9的应用处理器?D?DS5PV210为核心,详细介绍了系统的设计及相关接口技术。接口技术涵盖了IO、中断、串口、存储器、PWM、AD、DMA、IIC、SPI、Camera、LCD等,并提供了大量的实验例程。
|
關於作者: |
讲师介绍:华清远见北京中心优秀讲师;精通linux下的c语言应用程序开发;精通ARM处理器体系结构;精通计算机接口技术;多年的自动化设备开发经验,项目经验丰富;最受学生欢迎讲师之一。
|
目錄:
|
目 录
第1 章 嵌入式系统基础知识
1.1 嵌入式系统概述
1.1.1 嵌入统简介
1.1.2 嵌入式系统的特点
1.1.3 嵌入式系统的发展
1.2 嵌入式系统的组成
1.2.1 嵌入式系统硬件组成
1.2.2 嵌入式系统软件组成
1.3 嵌入式操作系统举例
1.3.1 商业版嵌入式操作系统
1.3.2 开源版嵌入式操作系统
1.4 嵌入式系统开发概述
1.5 学好微处理器在嵌入式学习中的重要性
1.6 本章小结
1.7 练习题
第2 章 嵌入式ARM 技术概论
2.1 ARM 体系结构的技术特征及发展
2.1.1 ARM 公司简介
2.1.2 ARM 技术特征
2.1.3 ARM 体系架构的发展
2.2 ARM 微处理器简介
2.2.1 ARM9 处理器系列
2.2.2 ARM9E 处理器系列
2.2.3 ARM11 处理器系列
2.2.4 SecurCore 处理器系列
2.2.5 StrongARM 和Xscale 处理器系列VI
2.2.6 MPCore 处理器系列
2.2.7 Cortex 处理器系列
2.2.8 最新ARM 应用处理器发展现状
2.3 ARM 微处理器结构
2.3.1 ARM 微处理器的应用选型
2.3.2 选择ARM 芯片的一般原则
2.3.3 选择一款适合ARM 教学的CPU
2.4 Cortex-A9 内部功能及特点
2.5 数据类型
2.5.1 ARM 的基本数据类型
2.5.2 浮点数据类型
2.5.3 存储器大小端
2.6 Cortex-A9 内核工作模式
2.7 Cortex-A9 存储系统
2.7.1 协处理器(CP15)
2.7.2 存储管理单元(MMU)
2.7.3 高速缓冲存储器(Cache)
2.8 流水线
2.8.1 流水线的概念与原理
2.8.2 流水线的分类
2.8.3 影响流水线性能的因素
2.9 寄存器组织
2.10 程序状态寄存器
2.11 三星Exynos4412 处理器介绍
2.12 FS4412 开发平台介绍
2.13 本章小结
2.14 练习题
第3 章 ARM微处理器的指令系统
3.1 ARM 处理器的寻址方式
3.1.1 数据处理指令寻址方式
3.1.2 内存访问指令寻址方式
3.2 ARM 处理器的指令集
3.2.1 数据操作指令
3.2.2 乘法指令
3.2.3 LoadStore 指令
3.2.4 跳转指令
3.2.5 状态操作指令
3.2.6 协处理器指令
3.2.7 异常产生指令
3.2.8 其他指令介绍
3.3 本章小结
3.4 练习题
第4章 ARM汇编语言程序设计
4.1 GNU ARM 汇编器支持的伪操作
4.1.1 伪操作概述
4.1.2 数据定义(Data Definition)伪操作
4.1.3 汇编控制伪操作
4.1.4 杂项伪操作
4.2 ARM 汇编器支持的伪指令
4.2.1 ADR 伪指令
4.2.2 ADRL 伪指令
4.2.3 LDR 伪指令
4.3 GNU ARM 汇编语言的语句格式
4.4 ARM 汇编语言的程序结构
4.4.1 汇编语言的程序格式
4.4.2 汇编语言子程序调用
4.4.3 过程调用标准AAPCS
4.4.4 汇编语言程序设计举例
4.5 汇编语言与C 语言的混合编程
4.5.1 GNU ARM 内联汇编
4.5.2 混合编程调用举例
4.6 本章小结
4.7 练习题
第5 章 ARM开发及环境搭建
5.1 仿真器简介
5.1.1 FS-JTAG 仿真器介绍
5.1.2 ULINK 介绍
5.2 开发环境搭建
5.2.1 XP 环境安装FS-JTAG 工具
5.2.2 开发板硬件连接
5.2.3 USB 转串口驱动安装
5.2.4 Putty 串口终端配置
5.3 Eclipse for ARM 使用
5.4 在开发环境中添加FS4412 工程
5.5 编译工程
5.6 调试工程
5.6.1 配置FS-JTAG 调试工具
5.6.2 配置调试工具
5.7 本章小结
5.8 练习题
第6 章 GPIO
6.1 GPIO 功能介绍
6.2 Exynos4412-GPIO 控制器详解
6.2.1 GPIO 功能描述
6.2.2 GPIO 特性
6.2.3 GPIO 分组
6.2.4 GPIO 常用寄存器分类
6.2.5 GPIO 寄存器详解
6.2.6 GPIO 寄存器封装
6.3 GPIO 的应用实例
6.3.1 GPIO 实例内容和原理
6.3.2 GPIO 实例硬件连接
6.3.3 GPIO 实例软件设计
6.3.4 GPIO 实例代码
6.3.5 GPIO 实例现象
6.4 本章小结
6.5 练习题
第7 章 ARM异常及中断处理
7.1 ARM 异常中断处理概述
7.2 ARM 体系异常种类
7.3 ARM 异常的优先级
7.4 ARM 处理器模式和异常
7.5 ARM 异常响应和处理程序返回
7.5.1 中断响应的概念
7.5.2 ARM 异常响应流程
7.5.3 从异常处理程序中返回
7.6 ARM 的SWI 异常中断处理程序设计
7.7 本章小结
7.8 练习题
第8 章 FIQ和IRQ 中断
8.1 ARM 中断控制器简介
8.1.1 中断软件分支处理(NVIC 和GIC)
8.1.2 硬件支持的分支处理(VIC)
8.2 通用中断控制器(GIC)
8.2.1 GIC 功能模块
8.2.2 GIC 中断控制器中断类型
8.2.3 GIC 中断控制器中断状态
8.2.4 GIC 中断处理流程
8.3 Exynos4412 中断源
8.4 Exynos4412-GIC 寄存器详解
8.5 GIC 中断应用实例
8.5.1 GIC 中断实例内容和原理
8.5.2 GIC 中断实例硬件连接
8.5.3 GIC 中断实例软件设计
8.5.4 GIC 中断实例代码
8.5.5 GIC 中断实例现象
8.6 本章小结
8.7 练习题
第9 章 通用异步收发(UART)接口
9.1 通用异步收发(UART)接口简介
9.1.1 串行通信与并行通信概念
9.1.2 异步串行方式的特点
9.1.3 异步串行方式的数据格式
9.1.4 同步串行方式的特点
9.1.5 同步串行方式的数据格式
9.1.6 波特率、波特率因子与位周期
9.1.7 RS-232C 串口规范
9.1.8 RS-232C 接线方式
9.2 Exynos4412-UART 控制器详解
9.2.1 UART 控制器概述
9.2.2 UART 控制器框架图
9.2.3 UART 寄存器详解
9.3 UART 接口应用实例
9.3.1 UART 接口实例内容和原理
9.3.2 UART 实例硬件连接
9.3.3 UATR 实例软件编写
9.3.4 UART 实例调试和运行现象
9.4 本章小结
9.5 练习题
第10 章 PWM 定时器
10.1 定时器和PWM 简介
10.1.1 定时器概述
10.1.2 脉冲宽度调制(PWM)概述
10.2 Exynos4412-PWM 定时器详解
10.2.1 PWM 定时器概述
10.2.2 PWM 定时器寄存器详解
10.2.3 PWM 定时器双缓冲功能
10.2.4 PWM 信号输出
10.3 PWM 定时器应用实例一:定时触发
10.3.1 定时触发实例内容和原理
10.3.2 定时触发实例硬件连接
10.3.3 定时触发软件设计和代码
10.3.4 定时触发实例现象
10.4 PWM 定时器应用实例二:PWM 输出
10.4.1 PWM 输出实例内容和原理
10.4.2 PWM 输出实例硬件连接
10.4.3 PWM 输出软件设计
10.4.4 PWM 输出实例现象
10.5 本章小结
10.6 练习题
第11 章 看门狗定时器
11.1 看门狗简介
11.2 Exynos4412 看门狗定时器详解
11.2.1 看门狗定时器概述
11.2.2 看门狗定时器寄存器详解
11.3 看门狗定时器实例
11.3.1 看门狗定时器实例内容和原理
11.3.2 看门狗定时器实例软件设计
11.3.3 看门狗定时器实例代码
11.3.4 看门狗定时器实例现象
11.4 本章小结
11.5 练习题
第12 章 RTC 定时器
12.1 RTC 定时器简介
12.2 Exynos4412-RTC 定时器详解
12.2.1 RTC 定时器概述
12.2.2 RTC 定时器寄存器详解
12.2.3 BCD 码
12.3 RTC 定时器实例
12.3.1 RTC 定时器实例内容和原理
12.3.2 RTC 定时器实例软件设计
12.3.3 RTC 定时器实例代码
12.3.4 RTC 定时器实例现象
12.4 本章小结
12.5 练习题
第13 章 AD 转换器
13.1 AD 转换器原理
13.1.1 AD 转换基础
13.1.2 AD 转换的技术指标
13.1.3 AD 转换器类型
13.1.4 AD 转换的一般步骤
13.2 Exynos4412- AD 转换器概述
13.2.1 AD 转换器概述
13.2.2 AD 转换器特点
13.2.3 AD 转换器寄存器解析
13.3 AD 转换器应用实例
13.3.1 AD 转换器实例内容和原理
13.3.2 AD 转换器实例硬件连接
13.3.3 AD 转换器实例软件设计
13.3.4 AD 转换器实例代码
13.3.5 AD 转换器实例现象
13.4 本章小结
13.5 练习题
第14 章 I2C 总线
14.1 I2C 总线协议
14.1.1 I2C 总线协议简介
14.1.2 I2C 总线协议内容
14.2 Exynos4412-I2C 控制器详解
14.2.1 I2C 控制器概述II
14.2.2 I2C 控制器框架图
14.2.3 I2C 控制器寄存器详解
14.2.4 I2C 控制器操作流程
14.3 I2C 接口应用实例
14.3.1 I2C 实例内容和原理
14.3.2 I2C 实例硬件连接
14.3.3 I2C 实例软件设计
14.3.4 I2C 实例代码
14.3.5 I2C 实例现象
14.4 本章小结
14.5 练习题
第15 章 SPI 接口
15.1 SPI 总线协议
15.1.1 SPI 总线协议简介
15.1.2 SPI 总线协议内容
15.2 Exynos4412-SPI 控制器详解
15.2.1 SPI 控制器概述 .
15.2.2 SPI 控制器时钟源控制
15.2.3 SPI 控制器寄存器详解
15.3 SPI 接口应用实例
15.3.1 SPI 实例内容和原理
15.3.2 SPI 实例硬件连接
15.3.3 SPI 实例软件设计
15.3.4 SPI 实例代码
15.3.5 SPI 实例现象
15.4 本章小结
15.5 练习题
|
內容試閱:
|
前 言
随着消费群体对产品要求的日益提高,嵌入式技术在机械器具制造业、电子产品制造业、信息通信业、信息服务业等领域得到了大显身手的机会,并被越来越广泛地应用。ARM 作为一种高性能、低成本的嵌入式RISC 微处理器,已得到最广泛的应用。目前,Cortex-A 系列处理器已经占据了嵌入式处理器大部分的中高端产品市场,尤其是在移动
设备市场上,几乎占据了绝对垄断的地位。
伴随着基于Android、IOS 系统的智能硬件应用发展,ARM 也越来越被大家所了解和接受,企业对ARM 技术人才的需求也越来越大。各高校也已经认识到了这一点,并设置了相关课程。但建立一套完整的嵌入式教学课程,是一项非常复杂的工作,尤其是如何和企业需求相结合,更是高校所面临的重大问题。目前市场上的嵌入式开发相关书籍大多是针对研发人员编写的,并不太适合高校教学使用。北京华清远见科技信息有限公司长期以来致力于嵌入式培训,为市场输送了大量的嵌入式人才。为了普及嵌入式技术,公司计划着手针对高职院校的特点编写一套嵌入式教材。教材的内容涵盖ARM 体系结构、接口技术、Linux 操作系统、Linux C 语言及Linux 应用开发实训。本书重点讲解ARM 体系结构及接口技术部分。
在学习本书之前,读者需要掌握数字电路、C 语言等基础知识。通过本书的学习,读者可以掌握ARM 体系结构和基于Cortex-A9 核心的Exynos4412 处理器常见硬件接口的开发方法。
本书以Exynos4412 处理器为平台,介绍了嵌入式系统开发的各个主要环节。本书侧重实践,辅以代码讲解,从分析的角度来学习嵌入式开发的各种技术。本书使用的工具是FS-JTAG 仿真器。FS-JTAG 是华清远见研发中心为了推进Cortex-A9 ARM 处理器的教学,提高合作企业及合作院校广大技术爱好者和培训学员的学习效率,研发出的低价的可以支持Cortex-A9 的ARM 仿真器。
本书将嵌入式软硬件理论讲解和嵌入式实验实践融合在一起,全书共15 章。其中,第1 章为嵌入式系统基础知识,介绍了嵌入式系统的组成及嵌入式开发概述。第2章为ARM 技术概述,讲解了ARM 体系结构、应用选型及编程模型等。第3 章为ARM 微处理器的指令系统,重点介绍了ARM 指令集。第4 章为ARM 汇编语言程序设计,主要介绍了GUN ARM 汇编伪操作、GNU ARM 汇编支持的伪指令、汇编语言与C 语言的混合编程。第5 章为ARM 开发环境搭建,包括Eclipse 环境介绍、FS-JTAG 仿真器使用等。第6 章为GPIO 编程,介绍了GPIO 的概念及Exynos 4412 的GPIO 操作方法。第7 章为ARM 异常及中断处理,介绍了ARM 处理器的异常处理的先关概念和异常处理流程。第8 章为FIQ 和IRQ 中断,着重讲解了编程中最常用的FIQ 和IRQ 中断,以及Exynos4412ARM 处理器开发详解:基于ARM Cortex-A9 处理器的开发设计IV的中断控制器工作原理和编程方法。第9 章为串行通信接口,介绍了串行通信的概念及Exynos4412 串口的操作方法。第10 章为PWM 定时器,介绍了定时器的工作原理和PWM定时器的操作方法。第11 章为看门狗定时器,介绍了看门狗定时器接口的操作方法。第12 章为RTC 定时器,介绍了RTC 定时器接口的操作方法。第13 章为AD 转换器,介绍了AD 转换器的工作原理及Exynos4412-AD 控制器的操作方法。第14 章为I2C 接口,结合MPU6050 姿态传感器,讲解了I2C 协议和Exynos44p12 的I2C 控制器开发方法。第15 章为SPI 接口,结合CAN 控制器芯片MCP2515,介绍了SPI 总线协议和Exynos4412-SPI 控制器开发方法。
本书的出版要感谢华清远见嵌入式培训中心的无私帮助。本书的前期组织和后期审校工作都凝聚了培训中心几位老师的心血,他们认真阅读了书稿,提出了大量中肯的建议,并帮助纠正了书稿中的很多错误。
由于作者水平所限,书中不妥之处在所难免,恳请读者批评指正。对于本书的批评和建议,可以发表到www.farsight.com.cn 技术论坛。
编 者2016 年5 月
|
|