第1章 嵌入式系统硬件基础 1
1.1嵌入式系统组成 1
1.2 8051系列单片机 3
1.2.1 8051系列单片机简介 3
1.2.2 AT89C51的引脚 3
1.2.3 AT89C51的CPU结构 4
1.2.4 AT89C51的存储器 6
1.2.5 AT89C51的I/O端口 7
1.2.6 AT89C51的中断系统 8
1.2.7 AT89C51的定时器/计数器 10
1.2.8 AT89C51的串行接口 11
1.3 AVR系列单片机 12
1.3.1 AVR系列单片机简介 12
1.3.2 ATmega32的引脚 12
1.3.3 ATmega32的CPU结构 13
1.3.4 ATmega32的存储器 14
1.3.5 ATmega32的中断 14
1.3.6 ATmega32的定时器/计数器 17
1.3.7 ATmega32的I/O端口 17
1.3.8 ATmega32的串行接口 18
1.4 LPC2136嵌入式处理器 20
1.4.1 LPC2136处理器简介 20
1.4.2 LPC2136的引脚 21
1.4.3 LPC2136的结构 22
1.5习题 27
第2章 工具软件与开发环境 28
2.1 Altium Designer 28
2.1.1 Altium Designer简介 28
2.1.2原理图设计 29
2.1.3 PCB设计 32
2.2 Keil开发环境 37
2.2.1 Keil简介 37
2.2.2 Keil工程 38
2.3 Proteus 43
2.3.1 Proteus开发环境简介 43
2.3.2基于Proteus的电路仿真 45
2.3.3 Proteus电路仿真设计实例 48
2.4 Linux工具链 50
2.4.1 vim 51
2.4.2 gcc 53
2.4.3创建和使用库 54
2.4.4 gdb 58
2.4.5 Makefile 59
2.5 Linux编程方法 62
2.5.1文件和目录 63
2.5.2 I/O操作 66
2.5.3进程 69
2.5.4线程 72
2.5.5套接字 75
2.6习题 78
第3章 嵌入式系统仿真设计 79
3.1 LED点阵电路仿真 79
3.1.1 LED点阵工作原理 79
3.1.2 LED点阵仿真电路介绍 80
3.1.3 LED点阵电路仿真程序设计 81
3.1.4 LED点阵电路仿真结果 82
3.2键盘电路仿真 83
3.2.1键盘工作原理 84
3.2.2键盘电路介绍 85
3.2.3键盘电路仿真程序设计 86
3.2.4键盘电路仿真结果 87
3.3点阵型LCD电路仿真 88
3.3.1 PG12864F模块工作原理 88
3.3.2 LCD显示电路介绍 93
3.3.3点阵型LCD电路仿真程序设计 94
3.3.4点阵型LCD电路仿真结果 98
3.4脉宽调制器控制直流电动机仿真 99
3.4.1脉宽调制器工作原理 99
3.4.2脉宽调制器控制直流电动机电路介绍 104
3.4.3脉宽调制器控制直流电动机仿真程序设计 105
3.4.4脉宽调制器控制直流电动机仿真结果 106
3.5习题 107
第4章 多核心单片机实验平台 108
4.1多核心单片机实验平台需求分析 108
4.1.1硬件需求分析 108
4.1.2软件需求分析 109
4.2多核心单片机实验平台系统设计 110
4.2.1系统结构 110
4.2.2处理器资源分配 110
4.2.3 AVR转接板设计 111
4.3多核心单片机实验平台系统实现 112
4.3.1基础电路 112
4.3.2流水灯模块 114
4.3.3键盘模块和数码管模块 115
4.3.4点阵LCD模块 118
4.3.5 LED点阵模块 123
4.3.6 温度采集模块 126
4.3.7语音模块 129
4.3.8继电器模块 136
4.3.9串口模块 137
4.3.10蜂鸣器模块 140
4.3.11红外模块 142
4.3.12步进电动机模块 146
4.4综合实例 149
4.4.1功能描述 149
4.4.2软件流程 149
4.4.3典型代码分析 150
4.4.4操作流程 154
4.5习题 155
第5章 嵌入式操作系统移植 156
5.1 FreeRTOS结构 156
5.1.1 FreeRTOS简介 156
5.1.2 FreeRTOS组织结构 157
5.1.3 FreeRTOS内核 158
5.2 FreeRTOS移植 165
5.2.1 FreeRTOS移植简介 165
5.2.2启动代码 165
5.2.3开关中断 169
5.2.4临界区的进入与退出 169
5.2.5任务栈初始化 170
5.2.6上下文切换 170
5.2.7时钟中断 171
5.3 FreeRTOS设备驱动程序设计 172
5.3.1 FreeRTOS设备驱动程序设计 172
简介 172
5.3.2设备驱动框架模型 172
5.3.3设备驱动框架设计 174
5.3.4设备驱动框架驱动模块实例 178
5.4 FreeRTOS文件系统 186
5.4.1 FAT文件系统原理 187
5.4.2 FatFs应用程序调用接口 189
5.4.3 SPI驱动模块 190
5.4.4 SD卡驱动模块 192
5.4.5 FatFs接口模块实现 200
5.5系统测试 201
5.5.1测试环境 201
5.5.2内核及驱动框架API测试 201
5.5.3 FatFs 测试 203
5.6习题 207
第6章 嵌入式图形系统 208
6.1 EGUI简介 208
6.2 EGUI需求分析 208
6.2.1运行环境需求 208
6.2.2核心模块需求 208
6.2.3外部接口需求 209
6.3 EGUI系统设计与实现 211
6.3.1总体架构 211
6.3.2文件组织结构 213
6.3.3基础数据结构模块 216
6.3.4绘图模块 224
6.3.5服务器模块 230
6.3.6客户端模块 241
6.3.7控件库模块 248
6.3.8交互模块 257
6.4 EGUI客户端编程框架 260
6.5系统测试 262
6.5.1系统测试之功能需求 262
6.5.2系统测试之系统设计 263
6.5.3系统测试之系统实现 263
6.5.4系统测试之功能测试 266
6.6习题 268
参考文献 269