第1章 嵌入式硬件概述 1
1.1硬件产品设计流程 1
1.2电路图的识图能力 3
1.3软件控制硬件方法 6
1.4嵌入式C语言 9
1.4.1寄存器定义解释 9
1.4.2寄存器操作 10
1.5 2440SDK底板接口资源说明 12
1.6本章小结 14
1.7课后练习 14
第2章GPIO接口编程 15
2.1 GPIO接口介绍 15
2.1.1 I/O接口的编址方式 16
2.1.2 GPIO (General-Purpose IO ports) 16
2.2硬件原理分析 18
2.2.1蜂鸣器硬件原理分析 18
2.2.2 LED的硬件原理分析 19
2.3 GPIO接口程序实现 20
2.3.1基于GPIO接口的蜂鸣器控制实现 21
2.3.2基于GPIO接口的LED控制实现 22
2.4 Keil MDK程序在线仿真调试环境配置 24
2.5本章小结 29
2.6课后练习 29
第3章UART串口通信 30
3.1通信的基本模式及原理 30
3.1.1数据通信的基本模式 30
3.1.2串行通信原理 31
3.2串行通信的方式 31
3.2.1同步串行通信 31
3.2.2异步串行通信 31
3.3串口硬件原理分析 32
3.3.1 RS-232-C接口 32
3.3.2 UART数据流电路分析 34
3.4串口通信程序设计 36
3.4.1初始化UART端口 36
3.4.2 UART线性控制寄存器 37
3.4.3 UART控制寄存器 38
3.4.4 UART波特率除数寄存器(波特率因子寄存器) 39
3.5本章小结 43
3.6课后练习 44
第4章AD转换接口 45
4.1 ADC介绍 45
4.1.1 AD转换器的分类 45
4.1.2 AD转换器的主要技术指标 46
4.2 A/D转换过程 47
4.3模数(A/D)转换器工作原理 48
4.3.1 A/D转换工作原理 48
4.3.2 AD硬件原理 49
4.4 ADC程序设计 50
4.5本章小结 52
4.6课后练习 52
第5章 中断INT接口 53
5.1 S3C2440中断介绍 53
5.2中断控制器操作 54
5.3 ARM中断异常处理 56
5.3.1 ARM中断异常处理流程 56
5.3.2中断优先级生成模块 63
5.4看门狗中断程序实例 66
5.4.1看门狗概念 66
5.4.2看门狗的功能模块及所用寄存器 66
5.4.3看门狗程序实现 68
5.5键盘中断程序设计 70
5.5.1键盘中断硬件连接 70
5.5.2键盘中断程序的实现 71
5.6本章小结 76
5.7课后练习 76
第6章RTC实时时钟 77
6.1实时时钟介绍 77
6.2 S3C2440内部RTC模块结构框架分析 78
6.3 S3C2440处理器的RTC工作原理 79
6.4 RTC硬件原理及程序实现 80
6.4.1 RTC硬件原理 80
6.4.2 RTC程序实现 81
6.5本章小结 89
6.6课后练习 89
第7章 触摸屏接口 90
7.1触摸屏介绍 90
7.1.1触摸屏简介 90
7.1.2触摸屏的主要类型 91
7.2四线电阻式触摸屏的工作原理 94
7.2.1触摸屏的接口部分 95
7.2.2触摸屏接口模式 95
7.2.3触摸屏相关寄存器 96
7.3触摸屏程序设计及实现 99
7.4本章小结 101
7.5课后练习 101
第8章LCD显示屏接口 102
8.1 LCD显示屏介绍 102
8.1.1超薄平面显示器时代来临 102
8.1.2液晶的发明与原理 102
8.1.3液晶显示器的发展与未来 104
8.2 S3C2440 LCD控制器详解 105
8.3 TFT屏时序分析及LCD控制器的设置方法 107
8.3.1 TFT屏时序分析 107
8.3.2 S3C2440 LCD控制器的设置方法 109
8.4 LCD驱动主程序分析 110
8.5本章小结 122
8.6课后练习 122
第9章IIC接口控制 123
9.1 HC概念及特点 123
9.1.1 HC概念 123
9.1.2 HC总线特点 124
9.1.3 I2C总线的硬件结构 124
9.2 HC总线工作原理及工作时序 125
9.2.1总线的构成及信号类型 125
9.2.2 HC时序分析 126
9.3 S3C2440的硬件连接及IIC控制器 128
9.3.1 AT24××系列的硬件连接 128
9.3.2 S3C2440的HC相关寄存器 129
9.4 HC程序设计及实现 131
9.4.1 HC程序设计 131
9.4.2 HC程序实现 133
9.5本章小结 135
9.6课后练习 135
第10章SD卡接口控制 136
10.1 SD总线接口 137
10.1.1 SPI接口 137
10.1.2 SD接口 138
10.2 SD总线协议 139
10.3 SD卡主程序分析 140
104本章小结 159
105课后练习 160
第11章MMU内存管理单元 161
11.1 MMU介绍 161
11.2 S3C2440虚拟地址到物理地址的映射 162
11.2.1虚拟地址和物理地址的概念 162
11.2.2虚拟地址到物理地址的转换过程 163
11.2.3内存的访问权限检查 169
11.2.4 TLB的作用 170
11.2.5 Cache的作用 170
11.2.6 S3C2440 MMU、 TLB、 Cache的控制指令 172
11.3 MMU使用实例——地址映射 173
11.4本章小结 178
11.5课后练习 179
第12章ARM-Keil集成开发环境 180
12.1 Keil MDK特性 180
12.2 Keil MDK整体结构及应用开发解决方案 181
12.3 RealView MDK的使用 182
12.3.1μision4的安装 182
12.3.2创建μision4工程 186
12.4 Keil MDK编译器与ULINK2使用 197
12.4.1 ULINK2概述 197
12.4.2 ULINK2与MDK的链接使用 198
12.5 Keil MDK编译器与J-LINK使用 200
12.5.1 J-LINK概述 200
12.5.2 J-LINK与MDK的链接使用 200
12.6 Keil MDK编译器与H-JTAG使用 203
12.6.1 H-JTAG介绍 203
12.6.2 H-JTAG调试结构 204
12.6.3 H-JTAG的安装 204
12.6.4 H-JTAG配置 206
12.6.5 MDK的安装与设置 208
12.6.6调试 209
12.7本章小结 210
12.8课后练习 210
附录 211
参考文献 215