目录 1
第1章 单片机技术概述 1
1.1 单片机基本概念 1
1.2 单片机芯片技术的发展概况 2
1.3 单片机主流产品系列 3
1.4 单片机系统设计方法 9
第2章 单片机基础 12
2.1 8051单片机基础 12
2.1.1 8051单片机的硬件结构 12
2.1.2 8051单片机的外部引脚功能 13
2.1.3 8051单片机的存储器结构 17
2.1.4 8051单片机的基本时序 22
2.2 8051单片机的指令系统 23
2.2.1 8051单片机的寻址方式 24
2.2.2 8051单片机指令介绍 26
2.3 8051定时系统 32
2.3.1 8051内部定时器/计数器 32
2.3.2 8051定时/计数器工作模式 33
2.4 8051的中断系统 36
2.4.1 计算机中断基础知识 36
2.4.2 8051单片机的中断系统 37
2.5 8051的基本系统扩展 40
2.5.1 程序存储器的扩展 41
2.5.2 数据存储器的扩展 42
2.5.3 8051外部I/O口扩展 43
3.1 KeilμVision2用户界面介绍 45
第3章 Windows下集成开发环境Keil μVision2介绍 45
3.2 创建项目 56
3.3 编译和连接 58
3.4 程序调试 62
第4章 C51的典型编程 63
4.1 8051中的C51语言 63
4.1.1 C语言相关知识 63
4.1.2 C51的数据类型 69
4.1.3 C51的数据存储类型和绝对地址 70
4.1.4 C51中断函数 75
4.1.5 C51函数的参数传递 77
4.1.6 C51函数库介绍 78
4.2.1 C51基本程序设计示例 85
4.2 C51程序设计基础 85
4.2.2 C51中断系统程序设计示例 99
4.2.3 C51定时系统程序设计示例 104
第5章 单片机的串口 109
5.1 串行通信基础 109
5.1.1 单工、半双工和全双工 110
5.1.2 同步通信和异步通信 110
5.1.3 波特率和收发时钟频率 111
5.2 单片机的串口结构 112
5.3 串口的工作方式 113
5.4 串口的典型应用 115
5.4.1 方式0实现I/O口扩展 115
5.4.2 使用查询方式实现串口异步通信 117
5.4.3 使用中断方式实现串口异步通信 121
5.4.4 应用方式2或方式3进行数据校验 124
第6章 PC端通信技术 130
6.1 MSComm控件介绍 130
6.1.1 MSComm控件的通信方法 131
6.1.2 MSComm控件的属性与常数 131
6.1.3 MSComm的出错信息 133
6.2 使用VB开发串口通信软件 134
6.2.1 用户界面设计 134
6.2.2 程序初始化 137
6.2.3 发送数据 137
6.2.4 接收数据 138
6.2.5 其他工作 139
6.3 使用VC++开发串口通信软件 140
6.3.1 用户界面设计 140
6.3.2 程序初始化 144
6.3.3 接收数据 145
6.3.4 发送数据 146
6.3.5 其他工作 148
第7章 单片机应用RS-232标准通信实例 149
7.1 实例背景及功能 149
7.2 RS-232C标准介绍 150
7.2.1 RS-232C中的引脚定义 151
7.2.2 RS-232C电气特性 153
7.2.3 RS-232C总线连接 154
7.2.4 RS-232C接口电平转换 155
7.3 单片机控制非接触式IC卡读写器模块 158
7.3.1 Mifarel射频卡结构 158
7.3.2 Mifare读写核心模块H6152介绍 165
7.3.3 电梯门禁系统介绍 176
7.3.4 系统硬件设计 176
7.3.5 系统软件设计 178
7.4 RS-232C通信设计的要点 191
第8章 简单串行通信协议设计 192
8.1 通信协议基础 192
8.1.1 通信协议的内容 192
8.1.2 通信协议的功能 193
8.2 协议的分层 193
8.3 握手与应答 194
8.4 超时控制 195
8.5 帧类型与帧结构 200
8.6 差错控制 202
8.6.1 奇偶校验 202
8.6.2 CRC校验 203
8.7 顺序控制 205
8.8 透明性 207
8.8.1 使用十六进制ASCII传送数据 207
8.8.2 使用转义字符传送数据 209
8.9 链路控制与管理 209
8.10 其他控制 210
9.1.1 通信接口设计 211
第9章 单片机点对点及多机通信实例 211
9.1 单片机点对点通信实例 211
9.1.2 单片机点对点通信程序设计 212
9.2 单片机多机通信实例 222
9.2.1 主机部分通信程序设计 223
9.2.2 从机部分通信程序设计 226
第10章 PC控制的单片机485现场监测系统 231
10.1 实例背景及功能 231
10.2 RS-485总线介绍 232
10.2.1 RS-232C接口主要缺点 232
10.2.2 RS-449/423/422/485接口标准及相互关系 233
10.2.3 RS-485标准连接器 236
10.2.4 RS-485驱动芯片及接口应用 237
10.3 RS-485现场监测系统设计实例 240
10.3.1 系统硬件设计 241
10.3.2 系统软件设计 242
10.4 RS-485总线系统设计要点 250
第11章 单片机I2C总线通信实例 251
11.1 实例背景及功能 251
11.2 I2C总线的基本特性 252
11.2.1 I2C总线的数据传输接口特性 252
11.2.2 I2C总线的通信时序 253
11.2.3 I2C总线的技术规范 257
11.2.4 I2C总线的分类 257
11.3.2 P89C66X系列单片机I2C总线相关寄存器 261
11.3.1 P89C66X系列单片机I2C总线接口引脚设计 261
11.3 I2C总线硬件接口设计 261
11.3.3 基于P89C66X系列单片机的I2C接口的软件设计 263
11.4 I2C总线模拟硬件接口软件设计 267
11.5 I2C总线系统的设计要点 272
第12章 单片机CAN总线通信实例 273
12.1 实例背景及功能 273
12.2 CAN总线协议介绍 274
12.2.1 CAN总线主要特点 275
12.2.2 CAN总线协议分层 275
12.2.3 CAN总线报文传输 276
12.2.4 CAN总线错误处理 280
12.3.1 CAN节点结构 281
12.3 CAN控制器SJA1000 281
12.3.2 SJA1000结构及主要特点 282
12.3.3 SJA1000寄存器 284
12.4 CAN总线通信实例系统设计与实现 296
12.4.1 系统硬件设计 297
12.4.2 系统软件设计 299
12.5 CAN总线通信系统的设计要点 315
第13章 单片机短距离无线通信实例 316
13.1 实例背景及功能 316
13.1.1 系统结构 316
13.1.2 器件选择 317
13.1.3 系统功能 318
13.2.1 nRF401主要工作特点和性能指标 319
13.2 无线通信芯片nRF401 319
13.2.2 nRF401管脚定义 320
13.2.3 nRF401状态切换 321
13.2.4 nRF401天线设计与外部连接 323
13.3 系统硬件设计 324
13.3.1 无线通信模块设计 325
13.3.2 数据采集器设计 326
13.3.3 终端节点设计 328
13.4 系统软件设计 329
13.4.1 数据采集器部分 329
13.4.2 终端节点部分 331
13.5 无线通信系统的设计要点 332
14.1 实例背景及功能 334
第14章 单片机USB通信实例 334
14.2 USB总线介绍 335
14.2.1 USB总线布局 335
14.2.2 USB电气特性与电源管理 336
14.2.3 USB总线协议 337
14.2.4 USB总线通道 337
14.2.5 USB总线数据传输类型 339
14.2.6 USB总线设备 343
14.2.7 USB主机 349
14.3 EZ-USB系列接口控制芯片 350
14.3.1 EZ-USB芯片结构 350
14.3.2 EZ-USB微处理器 351
14.3.3 EZ-USB端点 352
14.3.4 EZ-USB存储空间 353
14.3.5 EZ-USB的输入和输出 355
14.3.6 EZ-USB中断 357
14.3.7 EZ-USB寄存器 358
14.4 EZ-UUSB固件程序开发 362
14.4.1 固件基础 362
14.4.2 EZ-USB固件程序结构 364
14.4.3 EZ-USB固件开发实例 365
14.5 USB通信的设计要点 378
第15章 单片机网络通信实例 379
15.1 实例背景及功能 379
15.2 TCP/IP协议简介 380
15.3 网络控制器CS8900A介绍 381
15.3.1 CS8900A概述 382
15.3.2 CS8900A引脚功能 383
15.3.3 CS8900A部分寄存器介绍 385
15.3.4 CS8900A工作原理 394
15.3.5 CS8900A工作在8位模式下的特点 396
15.4 系统设计与实现 398
15.4.1 系统硬件设计 398
15.4.2 软件设计 401
15.5 单片机网络接口设计要点 422
附录 423
附录一 8051单片机汇编指令 423
附录二 部分国外IC厂商及其网址 426
附录三 部分IC查询网址 432