第1章 单片机开发的硬件基础 1
1.1单片机的应用和特点 1
1.1.1单片机的应用 1
1.1.2主流单片机的种类及特点 3
1.2 MCS-51系列单片机的内部结构 7
1.3 MCS-51单片机的引脚功能与时序 9
1.3.1 MCS-51系列单片机引脚说明 10
1.3.2 MCS-51单片机的时序 16
1.4 MCS-51单片机的存储器组织 17
1.4.1程序存储器 18
1.4.2数据存储器 19
1.4.3特殊功能寄存器 21
1.5单片机最小系统 24
1.5.1单片机最小系统 24
1.5.2彩灯控制器的设计 25
1.5.3顺序控制器的设计 27
1.6本章小结 29
第2章 单片机开发软环境 30
2.1单片机C语言宏配置介绍 30
2.1.1处理器的配置 30
2.1.2 ID区域 31
2.1.3 EEPROM数据 31
2.2单片机数据结构 31
2.2.1类型限定词 32
2.22常数 33
2.2.3变量 34
2.2.4构造数据类型 38
2.2.5函数 46
2.2.6中断 49
2.2.7 C语言和汇编语言的嵌套使用 53
2.2.8伪指令 54
2.3 MPLAB IDE编译器简介 57
2.3.1 MPLAB工程管理器(MPLABProject Manager) 57
2.3.2 MPLAB文本编辑器(MPLABEditor) 57
2.3.3 MPLAB软件仿真器(MPLAB-SIM Simulator) 58
2.3.4 MPLAB在线仿真器(MPLAB-ICE Simulator) 58
2.4 MPLAB IDE的安装和使用 58
2.4.1 MPLAB IDE的安装要求 58
2.4.2 MPLAB IDE的使用 59
2.4.3实例应用 59
2.4.4 MPLAB IDE中的工程 62
2.4.5 MPLAB IDE工程的编译 65
2.4.6 MPLAB IDE的软件仿真 66
2.5 MCC18基础 68
2.5.1 MCC18的安装目录浏览 68
2.5.2 MCC18的语言执行流程 70
2.5.3 MCC18举例 70
2.5.4 MCC18的编译环境 72
2.5.5 MCC18和单片机的比较 73
2.6单片机的混合开发 74
2.6.1 C51和汇编语言的性能比较 74
2.6.2 C51和汇编语言的混合编程 74
2.7本章小结 79
第3章 单片机开发工程基础 80
3.1单片机应用系统设计的流程 80
3.2单片机应用系统两设计原则 82
3.2.1硬件系统设计原则 82
3.2.2应用软件设计原则 83
3.3单片机的选型 83
3.3.1单片机选型的原则 83
3.3.2单片机选型参考 85
3.3.3开发工具的选择 86
3.4系统常见故障与调试 87
3.5本章小结 88
第4章 数字滤波及简单的控制算法 89
4.1数字滤波算法 89
4.1.1算术平均值滤波 90
4.1.2滑动平均值滤波 92
4.1.3防脉冲干扰平均值滤波 93
4.1.4中值滤波 95
4.1.5一阶滞后滤波 96
4.2数字PID控制算法 97
4.2.1位置式PID控制算法 98
4.2.2增量式PID控制算法 100
4.2.3积分分离的PID控制算法 102
4.2.4变速积分RD控制算法 103
4.3本章小结 104
第5章 键盘接口电路 105
5.1键盘设计的组成和分类 105
5.1.1键盘的物理结构 106
5.1.2键盘的组成形式 106
5.2键盘接口的工作过程和工作方式 111
5.2.1键盘的抖动干扰和消除方法 111
5.2.2盘接口的工作过程 112
5.2.3键盘的工作方式 112
5.3键位置的判别方法 113
5.4键盘接口设计的储存芯片和相关协议 114
5.4.1键盘接口设计的储存芯片 114
5.4.2 AT24CXX系列的芯片及I2C协议 114
5.4.3 A93CXX系列的芯片及SPI协议 124
5.5键盘接口实现的工程实例 132
5.5.1矩阵键盘接口的工程实例 132
5.5.2矩阵式中断扫描键盘的设计 137
5.5.3二进制编码键盘接口的工程实例 139
5.6重点与难点 141
第6章 城市交通指挥系统 143
6.1交通灯顺序控制 143
6.1.1硬件系统的设计 143
6.1.2反向器74F06. 145
6.1.3控制字 145
6.1.4程序设计 145
6.2设计一种基于模糊理论的单片机控制交通路口调度系统 148
6.2.1系统的总体设计 148
6.2.2十字路口调度系统模糊控制器的设计 149
6.2.3电路设计 151
6.2.4车流量检测电路 154
6.2.5系统主程序和模糊控制程序设计 155
6.2.6 系统显示程序设计 157
6.3重点与难点 159
第7章 阵列式LED显示屏 161
7.1显示屏显示原理及串行通信基本概念 161
7.1.1显示屏显示原理 161
7.1.2串行通信 163
7.1.3阵列式LED显示屏的实现 166
7.2显示屏硬件电路设计 166
7.2.1硬件电路介绍 168
7.2.2外扩数据存储器电路 170
7.3列式LED显示屏显示程序的实现 171
7.3.1 汉字点阵数据的提取 171
7.3.2显示主程序 174
7.3.3串口中断处理程序 176
7.3.4显示驱动函数 179
7.3.5外部存储器读写程序 181
7.3.6串口通信程序 181
7.3.7文字显示特效程序 182
7.4本章小结 191
第8章IC卡读/写系统的开发及其应用 192
8.1 IC卡基础 192
8.1.1 IC卡的分类 192
8.1.2 IC卡的标准 194
8.2接触型IC卡读写系统的开发 194
8.2.1 IC卡读写系统的时序 195
8.2.2 IC卡读写系统的硬件连接图 196
8.2.3 IC卡读写系统的软件系统 197
8.3基于SLE4442加密卡读写系统的开发 201
8.3.1 SLE4442卡的介绍 201
8.3.2 SLE4442的模式 203
8.3.3 SLE4442的操作命令 205
8.3.4 SLE4442读/写系统的软硬件设计 208
8.4重点与难点 215
第9章 无刷直流电机控制 216
9.1无刷直流电机控制原理 216
9.1.1无刷直流电机的组成 217
9.1.2无刷直流电机的工作原理 217
9.1.3无刷直流电机的控制方法 219
9.2无刷直流电机的工作特性 220
9.3直流无刷电机控制的应用实现 221
9.3.1总体设计概述 221
9.3.2直流无刷电机控制的硬件设计 222
9.3.3直流无刷电机控制的软件设计 224
9.3.4无刷直流电机速度闭环控制系统 227
9.4本章小结 230
第10章 永磁同步电机控制实现 231
10.1永磁同步电机的结构与分类 231
10.2永磁同步电机的矢量控制 232
10.3永磁同步电机控制 236
10.3.1控制电路设计 237
10.3.2光电隔离电路设计 238
10.3.3功率电路设计 239
10.4永磁同步电机控制的软件实现 239
10.4.1电压SVPVM的DSPIC33f软件实现 241
10.4.2转子位置检测 243
10.4.3 AD转换模块 245
10.5本章小结 246
第11章 汽车行驶状态记录仪 247
11.1汽车行驶记录仪功能介绍 247
11.2简易汽车行驶记录仪的设计 249
11.2.1汽车行驶记录仪的考虑因素 250
11.2.1 MSP430. 251
11.2.2车模拟信号的采集 254
11.2.4数字信号采集电路 255
11.2.5 SST39VF160芯片介绍 257
11.3记录仪的软件设计 257
11.3.1软件流程图 258
11.3.2数据存储格式 259
11.3.3 SST39VF160存储器数据读写的实现 259
11.4数据采集的程序实现 263
11.5本章小结 264
第12章USB-GPIB控制器的实现 265
12.1 USB-GPIB控制器简介 265
12.1.1认识USB 266
12.1.2 GPIB 269
12.2 USB-GPIB控制器的硬件电路设计 271
12.2.1器件的选择 272
12.2.2 USB-GPIB控制器电路设计 278
12.3 USB-GPIB控制器的软件程序的实现 287
12.3.1 USB单片机协议控制芯片与主机(计算机)的数据交互 288
12.3.2 USB协议控制芯片与GPIB控制器的数据交互 299
12.4 USB-GPIB控制器固件的调试与固化 300
12.4.1 USB-GPIB控制器固件的调试 301
12.4.2 USB-GPIB控制器固件程序的固化 302
12.5本章小结 303
第13章 单片机系统抗干扰技术 304
13.1研究抗干扰技术的重要性 304
13.2干扰的分类 305
13.2.1按噪声产生的原因分类 306
13.2.2按噪声传导模式分类 306
13.2.3按噪声波形及性质分类 307
13.3干扰的耦合方式 308
13.4单片机系统可靠性的设计任务与方法 310
13.4.1单片机系统可靠性设计的任务 310
13.4.2可靠性设计一般方法 311
13.5本章小结 313
第14章 单片机系统硬件抗干扰技术 314
14.1无源滤波器抗干扰 314
14.1.1电容滤波器 315
14.1.2电感滤波器 316
14.1.3 RC低通滤波器 316
14.1.4 1LC低通滤波器 318
14.1.5低通滤波器的结构选择 319
14.1.6低通滤波器的平衡结构与串联形式 319
14.2有源滤波器抗干扰 321
14.2.1一级低通有源滤波器 321
14.2.2二级低通有源滤波器 322
14.3去耦电路 324
14.3.1尖峰电流的形成原理 324
14.3.2去耦电容的配置 325
14.3.3光电隔离 326
14.3.4继电器隔离 328
14.3.5变压器隔离 328
14.3.6布线隔离 329
14.4接地技术 330
14.5本章小结 334
第15章 单片机开发的软件可靠性 335
15.1概述 335
15.2指令冗余技术 336
15.2.1单字节指令冗余 337
15.2.2重要指令冗余 337
15.3软件陷阱技术 337
15.3.1未使用的中断向量区设置陷阱 338
15.3.2 RAM数据区中设置陷阱 338
15.3.3未使用的EPROM数据区设置陷阱 339
15.3.4非EPROM单片机空间设置陷阱 339
15.3.5运行程序区设置陷阱 339
15.4看门狗技术 339
15.4.1硬件看门狗技术 340
15.4.2软件看门狗技术 342
15.5本章小结 345