二、ARM嵌入式体系结构与接口技术(Cortex-A8版)

第一章 嵌入式系统基础知识

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 开源版嵌入式操作系统


第二章 ARM技术概述

2.1 ARM体系结构的技术特征及发展

2.1.1 ARM公司简介

2.1.2 ARM技术特征

2.1.3 ARM体系结构的发展

2.2 ARM微处理器简介

2.2.1 ARM7处理器系列

2.2.2 ARM9处理器系列

2.2.3 ARM9E处理器系列

2.2.4 ARM11处理器系列

2.2.5 SecurCore处理器系列

2.2.6 StrongARM和Xsale处理器系列

2.2.7 MPCore处理器系列

2.2.8 Cortex处理器系列

2.3 ARM微处理器结构

2.4 ARM微处理器的应用选型

2.4.1 ARM芯片选择的一般原则

2.4.2 选择一款适合教学的ARM芯片

2.5 Cortex-A8内部功能及特点

2.6 数据类型

2.6.1 ARM基本数据类型

2.6.2 浮点数据类型

2.6.3 存储器大/小端

2.7 Cortex-A8内核工作模式

2.8 Cortex-A8存储系统

2.8.1 协处理器

2.8.2 存储管理单元

2.8.3 高速缓冲存储器

2.8.4 NEON技术

2.8.5 安全域(TrustZone)

2.9 流水线

2.9.1 流水线的概念与原理

2.9.2 流水线的分类

2.9.3 影响流水线性能的因素

2.10 寄存器组织

2.11 程序状态寄存器

2.12 SAMSUNG S5PC100处理器介绍


第三章 ARM的指令集合

3.1 ARM指令集

3.1.1 数据操作指令

3.1.2 乘法指令

3.1.3 Load/Store指令

3.1.4 跳转指令

3.1.5 状态操作指令

3.1.6 协处理器指令

3.1.7 异常产生指令

3.2 ARM指令的寻址方式


第四章 GNU汇编伪指令集

4.1 GNU汇编器的平台无关伪指令

4.1.1 伪指令概念

4.1.2 符号定义伪指令

4.1.3 数据定义伪指令

4.1.4 汇编控制伪操作

4.1.5 杂项伪操作

4.2 GNU汇编器支持的ARM伪指令

4.2.1 ADR伪指令

4.2.3 ADRL伪指令

4.2.3 LDR伪指令

4.3 ARM汇编语言的程序结构

4.3.1 汇编语言的程序格式

4.3.2 汇编语言的子程序调用

4.3.3 过程调用标准AAPCS/ATPCS

4.3.4 汇编语言程序设计举例

4.4 汇编语言与C语言的混合编程

4.4.1 GNU内联汇编

4.4.2 C和汇编的混合编程


第五章 ARM集成开发环境搭建

5.1 FS-JTAG仿真器介绍

5.2 开发环境搭建

5.2.1 开发工具的安装

5.2.2 创建一个新工程

5.2.3 调试工具


第六章 GPIO编程

6.1 GPIO功能介绍

6.2 S5PC100芯片的GPIO控制器介绍

6.2.1 特性

6.2.2 GPIO分组预览

6.2.3 S5PC100的GPIO常用寄存器分类

6.2.4 S5PC100 I/O接口常用寄存器详解

6.3 S5PC100的GPIO的实例

6.3.1 电路原理

6.3.2 寄存器设置

6.3.3 程序编写


第七章 ARM系统时钟及编程

7.1 S5PC100 时钟域的划分

7.2 S5PC100时钟的产生过程分析

7.2.1 时钟的产生

7.2.2 模块对应的时钟域

7.3 S5PC100时钟源的选择

7.3.1 时钟来自于外部引脚

7.3.2 时钟来自于时钟管理单元(CMU)

7.4 S5PC100时钟的配置

7.5 S5PC100时钟配置寄存器描述

7.6 S5PC100时钟源配置实例


第八章 ARM异常处理及编程

8.1 ARM异常中断处理概述

8.2 ARM体系异常种类

8.3 ARM异常的优先级

8.4 ARM处理器模式和异常

8.5 ARM异常响应和处理程序返回

8.5.1 中断响应的概念

8.5.2 ARM异常响应流程

8.5.3 从异常处理程序中返回

                8.6 ARM系统中异常中断处理程序的安装

8.7 ARM的SWI异常中断处理程序的安装

8.8 FIQ和IRQ异常中断程序设计

8.9 基于Cortex-A8内核的S5PC100异常程序设计

8.9.1 S5PC100中断机制分析

8.9.2 S5PC100中断处理程序实例



第九章 串行通信接口

9.1 串行通讯

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 S5PC100异步串行通讯

9.2.1 S5PC100串口控制器概述

9.2.2 S5PC100串口控制器寄存器

9.3 串口发送接收程序实例

9.3.1 电路连接

9.3.2 程序的编写

9.3.3 调试与运行程序


第十章 PWM定时器

10.1 S5PC100 PWM程序

10.1.1 PWM定时器概述

10.1.2 PWM定时器特点

10.1.3 PWM定时器的寄存器

10.1.4 PWM定时器实例

10.2 S5PC100看门狗定时器

10.2.1 S5PC100看门狗定时器概述

10.2.2 看门狗定时器寄存器

10.2.3 看门狗定时器程序编写


第十一章 A/D转换器

11.1 A/D转换器原理

11.1.1 A/D转换器原理

11.1.2 A/D转换的技术指标

11.1.3 A/D转换器类型

11.1.4 A/D转换的一般步骤

11.2 S5PC100 A/D转换器

11.2.1 S5PC100 A/D转换器概述

11.2.2 S5PC100 A/D控制器寄存器

11.3 A/D转换器实例

11.3.1 电路连接

11.3.2 程序的编写

11.3.3 调试与运行结果


第十二章 实时时钟RTC

1.2.1 RTC介绍

1.2.2 RTC控制器

1.2.3 RTC控制器寄存器详解

1.2.4 RTC应用实例


第十三章 I2C总线

13.1 I2C总线

13.1.1 I2C总线介绍

13.1.2 I2C总线术语

13.1.3 I2C总线位传输

13.1.4 I2C总线数据传输

13.1.5 I2C总线寻址方式

13.1.6 快速和高速模式

13.2 I2C总线控制器

13.2.1 S5PC100下的I2C控制器介绍

13.2.2 I2C总线控制寄存器详解

13.3 I2C总线应用实例

13.3.1 电路原理分析

13.3.2 代码实现


第十四章 存储器接口

14.1 Flash ROM介绍

14.2 NOR Flash操作

14.2.1 AM29LV160D芯片介绍

14.2.2 AM29LV160D字编程操作

14.2.3 AM29LV160D扇区/块擦除操作

14.2.5 AM29LV160D与S5PC100的接口电路

14.2.6 AM29LV160D存储器的程序设计

14.3 NAND Flash操作

14.3.1 芯片介绍

14.3.2 读操作过程

14.3.3 擦除操作过程

14.3.4 写操作过程

14.4 S5PC100中的NAND Flash控制器的操作

14.4.1 S5PC100中的NAND Flash控制器概述

14.4.2 S5PC100中的NAND Flash控制器寄存器详解

14.5 S5PC100 NAND Flash接口电路与程序设计

14.5.1 K9F2G080U和S5PC100的接口电路

14.5.2 S5PC100控制K9F2G080U的程序设计


第15章 SPI接口

15.1 SPI总线协议理论

15.1.1 协议简介

15.1.2 协议内容

15.2 SPI控制器详解

15.2.1 S5PC100的SPI控制器简介

15.3 SPI接口应用实例



第16章  DMA控制器

16.1 PL330原理概述

16.1.1 DMAC简介

16.1.2 S5PC100下的DMAC模型

16.1.3 PL330概述

16.2 PL330详解

16.2.1 PL330指令集

16.2.2 相关寄存器详解

16.3 S5PC100 PL330实例


第17章 LCD接口技术

17.1 LCD控制器原理概述

17.1.1 LCD控制器介绍

17.1.2 S5PC100的LCD控制器介绍

17.1.3 S5PC100的LCD控制寄存器操作

17.1.4 LCD控制器寄存器

17.2 LCD控制器应用实例

第18章 CAMIF接口技术

18.1 OV9650介绍

18.1.1 芯片功能描述

18.1.2 OV9650物理参数

18.1.3 OV9650寄存器详解

18.2 SCCB总线

18.2.1 SCCB协议介绍

18.2.2 SCCB的总线编程

18.3 CAMIF接口详解

18.3.1 基于S5PC100的CAMIF接口介绍

18.3.2 S5PC100 CAMIF寄存器详解

18.3.3 CAMIF应用示例