目 录
第1篇 系统基础篇
第1章 嵌入式系统总论 3
1.1 嵌入式系统概述 3
1.2 嵌入式系统的发展历程与应用领域 3
1.2.1 嵌入式系统的发展历程 3
1.2.2 嵌入式系统的应用领域 4
1.3 嵌入式系统的组成及分类 6
1.3.1 嵌入式系统的组成 6
1.3.2 嵌入式系统的分类 9
第2章 嵌入式系统的基础知识 11
2.1 嵌入式硬件系统 11
2.1.1 嵌入式处理器 11
2.1.2 存储器 13
2.1.3 外设接口 14
2.2 嵌入式软件系统 15
2.3 嵌入式系统的开发流程 15
第3章 软件开发环境的搭建 17
3.1 MDK-Keil ?Vision 17
3.1.1 MDK-Keil ?Vision简介 17
3.1.2 MDK-Keil ?Vision5软件的
安装 18
3.2 STM32CubeMX 21
3.2.1 STM32CubeMX概述 21
3.2.2 STM32CubeMX的安装 21
3.2.3 STM32CubeMX的使用 24
3.3 STM32设备驱动库 30
3.3.1 库开发与寄存器开发的关系 30
3.3.2 STM32驱动库的简介与分类 31
3.3.3 固件库的选择 32
第2篇 集成开发篇
第4章 μC/OSⅡ嵌入式实时操作
系统 37
4.1 μC/OSⅡ嵌入式实时操作系统概述 37
4.2 μC/OSⅡ实时操作系统的移植 38
4.2.1 移植准备工作 38
4.2.2 μC/OSⅡ工程移植 39
4.2.3 软件设计 42
4.2.4 下载验证 44
4.3 μC/OSⅡ设计与应用 44
4.3.1 多任务设计 44
4.3.2 中断处理与时间管理 57
4.3.3 事件控制块 59
4.3.4 消息邮箱 65
4.3.5 信号量与互斥信号量 66
4.3.6 内存管理 68
第5章 STemWin开发 76
5.1 STemWin概述 76
5.2 STemWin在STM32系列微控制器上的
移植 76
5.2.1 移植准备工作 76
5.2.2 向工程添加文件 78
5.2.3 修改工程文件 79
5.2.4 触摸屏移植 83
5.2.5 综合测试程序编写 87
5.2.6 下载验证 89
5.3 STemWin与μC/OS结合的移植 89
5.3.1 移植准备工作 90
5.3.2 向工程添加以及修改相应
文件 90
5.3.3 综合测试程序编写 93
5.3.4 下载验证 94
5.4 STemWin的设计与应用 94
5.4.1 STemWin基础显示 95
5.4.2 STemWin图片显示 100
5.4.3 STemWin GUIBuilder 的
使用 105
第6章 LwIP网络开发 116
6.1 LwIP简介 116
6.2 LwIP在STM32系列微控制器上的
移植 117
6.2.1 LwIP无操作系统移植 117
6.2.2 LwIP带μC/OSⅡ操作系统
移植 146
6.3 LwIP开发基础 166
6.3.1 LwIP内存管理 166
6.3.2 LwIP数据包管理 168
6.3.3 LwIP网络接口管理 169
6.3.4 TCP协议基础 170
第3篇 实战篇
第7章 基础实验 173
7.1 ?C/OSⅡ多任务设计实验 173
7.1.1 ?C/OSⅡ启动和初始化 173
7.1.2 任务状态 174
7.1.3 任务控制块 175
7.1.4 任务堆栈 177
7.1.5 任务就绪表 178
7.1.6 任务调度和切换 181
7.1.7 实验现象 182
7.2 ?C/OSⅡ的时钟设计实验 182
7.2.1 定时器工作模式 182
7.2.2 ?C/OSⅡ定时器实验 185
7.3 STemWin图片与字体显示实验 189
7.4 网络通信实验 192
第8章 综合实验 202
8.1 电子图书功能的详细操作介绍 203
8.2 数码相框功能的详细操作介绍 204
8.3 音乐播放功能的详细操作介绍 205
8.4 视频播放功能的详细操作介绍 207
参考文献 209