本书从介绍802.15.4/ZigBee技术的概念开始,让读者在CC2431无线单片机硬件平台上,自己动手搭建一个ZigBee开发系统。从简单无线网络通讯到较为复杂的无线定位,循序渐进,让对无线通讯和无线网络完全不熟悉的电子工程师,能够轻松上路,体验最新ZigBee无线网络技术的原理,了解ZigBee无线网络的奥秘,熟悉如何进行无线定位系统开发和设计。
本书将以实验形式详细地为读者分析ZigBee2006无线网络实现以及ZigBee2006无线实时定位过程,每个实验都将为读者详细解剖C51源代码。实验包括最简单的CC2431无线点对点数据通信、C51RF-3-F数据分析仪分析ZigBee数据包、GENERIC APP样板实验、配置网状网络和进行数据收发实验、格式化网络、进入和退出网络、配置ZigBee 2006网络参数、Simple API样板实验、矿井安全——无线定位网络系统。
本书以TI/Chipeon公司的8051内核无线片上系统(SqC)CC2431 ZigBee无线定位单片机为中心,介绍802.15.4和最新ZigBee无线网络技术和高精度无线定位技术的实际应用。该书的重点不是ZigBee无线网络技术的原理,而是实战,即自己动手进行ZigBee2006无线网络项目实验和实际采用ZigBee技术构建无线定位网络:从介绍802.15.4/ZigBee技术的概念开始,教会读者在CC2431无线单片机硬件平台上自己动手搭建一个ZigBee开发系统;从简单无线网络通信到较为复杂的无线定位,循序渐近,让对无线通信和无线网络完全不熟悉的电子工程师能够轻松上路,体验最新ZigBee无线网络技术的原理,了解ZigBee无线网络的奥秘,熟悉如何进行无线定位系统的开发和设计。
本书的另一个主要特点是,以最新版的ZigBee2006协议栈为中心,让读者在各种ZigBee无线网络基础实验和无线定位应用模式实验中,理解ZigBee2006协议栈,并将自己未来的各种应用和ZigBee2006协议栈结合在一起,达到快速掌握ZigBee最新技术的目的。
本书适合广大从事单片机、无线应用、自动控制、无线传感等的工程技术人员作为学习、参考用书,也可作为高等院校计算机、电子、自动化、无线通信课程的教材。
第1章 ZigBee无线网络和定位系统基础 1
1.1 无线数据网络和无线定位技术广阔的应用前景 1
1.2 ZigBee无线网络使用频谱和ISM开放频带 4
1.3 热门短距离无线数据网络技术 4
1.3.1 ZigBee 5
1.3.2 Wi-Fi 7
1.3.3 蓝牙(Bluetooth) 9
1.3.4 超宽频技术(UWB) 12
1.3.5 近短距无线传输(NFC) 13
1.4 典型的无线网络结构和网络拓扑 13
1.5 典型的无线网络定位系统 19
1.6 ZigBee无线网络定位技术特点 22
1.6.1 ZigBee技术的广阔应用前景 22
1.6.2 低功耗低速技术特点 27
1.6.3 高可靠性的无线网络 29
1.6.4 网络拓扑和路由 31
1.6.5 安全和加密 34
1.6.6 协议栈模式和应用模式 36
1.7 练习题和答案 36
第2章 ZigBee无线定位单片机CC2430/CC2431 39
2.1 CC2430/CC2431芯片的主要特点 41
2.2 CC2430/CC2431芯片构架 41
2.3 CC2430/CC2431片上8051内核 44
2.3.1 增强型8051内核 44
2.3.2 存储空间 45
2.3.3 特殊功能寄存器 46
2.4 CC2430/CC2431主要特征外设 47
2.4.1 输入输出(I/O)端口 48
2.4.2 直接存取(DMA)控制器 49
2.4.3 MAC定时器 50
2.4.4 AES-128安全协处理器 51
2.4.5 14位模数转换器(ADC) 52
2.5 CC2430/CC2431无线收发部分 54
2.5.1 IEEE802.15.4调制模式 55
2.5.2 接收模式 56
2.5.3 发送模式 57
2.5.4 MAC数据格式 58
2.5.5 CSMA/CA协处理器 58
2.5.6 参考设计电路 60
2.6 CC2430/CC2431所涉及无线通信技术 61
2.6.1 清洁信道评估CCA 61
2.6.2 无线直接频谱技术DSSS 61
2.6.3 载波侦听多点接入/冲突检测CSMA/CA 64
2.7 CC2431无线定位引擎介绍 66
2.8 练习题和答案 70
第3章 建立自己ZigBee无线定位硬件平台 72
3.1 无线开发系统硬件平台的选择 72
3.2 ZigBee无线网络/定位系统C51RF-CC2431-ZDK概述 75
3.3 C51RF-CC2431-ZDK仿真器 76
3.4 无线定位中心控制板系统:网关系统 77
3.5 无线参考节点和定位节点:ZigBee高频模块 86
3.6 硬件综合测试SPP软件 88
3.7 C51RF-3-F协议分析仪 94
3.8 习题与答案 97
第4章 自己ZigBee无线定位软件平台 99
4.1 ZigBee软件集成开发平台 99
4.2 IAR集成开发环境 100
4.2.1 IAR安装 100
4.2.2 添加文件或新建程序文件 107
4.2.3 设置工程选项参数 110
4.2.4 编译、连接、下载 114
4.2.5 仿真调试 115
4.3 ZigBee2006协议栈库 124
4.4 无线网络定位图形监视软件 128
4.5 物理地址修改软件 136
4.6 ZigBee数据分析仪软件 141
4.7 其它辅助软件 145
4.8 配套测试例程 145
4.9 练习题和答案 148
第五章 ZigBee协议栈结构和原理 150
5.1 ZigBee协议栈概述 150
5.2 IEEE802.15.4通信层 153
5.2.1 PHY(物理)层 153
5.2.2 MAC(介质接入控制子层)层 155
5.3 ZigBee网络层 158
5.3.1 网络层(Network Specification)概况 159
5.3.2 网络层帖结构 160
5.3.3 网络层功能介绍 173
5.4 ZigBee应用层 189
5.4.1 ZigBee技术应用 189
5.4.2 应用层(Application Layer Specification)概述 191
5.4.3 ZigBee应用支持子层 192
5.4.4 ZigBee Profile 194
5.4.5 ZigBee设备对象(ZDO) 198
5.5 ZigBee网络/定位系统配套协议栈 202
5.5.1 精简版ZigBee协议栈(2004) 203
5.5.2 验证版ZigBee协议栈2006 206
5.6 练习题和答案 208
第6章 ZigBee2006 基础实验(一) 210
6.1 初级实验样板(Sample App) 210
6.1.1 实验目的 210
6.1.2 实验原理 210
6.1.3 实验硬件和软件准备 227
6.2 ZigBee2006协议栈编译、下载 228
6.2.1 设备选择及设置 228
6.2.2 编译、下载程序 229
6.3 实验源代码 230
6.3.1 发送一个信息包 230
6.3.2 发送、接收数据的过程 230
6.3.2 接收一个信息包 233
6.4 实验内容 234
6.4.1 流程图 234
6.4.2 路由器代码 234
6.4.3 协调器代码 236
6.5 采用C51RF-3-F数据分析仪分析ZigBee数据包 237
6.5.1 协议分析仪组成 237
6.5.2 加入网络 237
6.5.3 发送、接收数据 238
6.6 实验效果 240
6.7 习题与答案 240
第7章 ZigBee 2006基础实验(二) 242
7.1 ZigBee 2006 实时操作系统简介 242
7.1.1 OS术语介绍 242
7.1.2 OSAL API介绍 243
7.1.3 OSAL任务 250
7.2 简单ZigBee 2006应用接口(simple api) 252
7.2.1 实验目的 252
7.2.2 实验原理 252
7.2.3 软件准备SAPI介绍 252
7.3 网络形成 253
7.3.1 协调器格式化网络 253
7.3.2 路由器和终端设备加入网络 254
7.3.3 ZDO_StartDevice 254
7.4 绑定 255
7.4.1 绑定表格 255
7.4.2 绑定建立 257
7.4.3 绑定解除 261
7.5 命令 262
7.5.1 命令定义及使用 262
7.5.2 串(cluster) 265
7.5.3 ZCL介绍 265
7.5.4 PROFILE介绍 265
7.6 灯开关实验 267
7.6.1 APP函数分析 267
7.6.2 灯开关实验 277
7.6.3 实验总结 279
7.7 温度传感器实验 280
7.7.1 设备 280
7.7.2 命令 281
7.7.3 发现和绑定 281
7.7.4 数据包发送和接收 282
7.8 习题与答案 285
第8章 ZigBee2006无线定位实验 288
8.1 实验目的和设备 288
8.1.1 实验目的 288
8.1.1 实验设备 288
8.2 ZigBee2006无线定位应用Profile 289
8.2.1 XY-RSSI 请求(串ID0X0011) 289
8.2.2 XY-RSSI 应答(串ID0x0012) 289
8.2.3 定位节点发现请求(串ID0x0013) 290
8.2.4 定位节点发现回答(串ID0x0014) 290
8.2.5 参考节点配置(串ID0x0015)单播 290
8.2.6 定位节点配置(串ID0x0016)单播 290
8.2.7 参考节点请求配置(串ID0x0017)广播 291
8.2.8 定位节点请求配置(串ID0x0018)广播 291
8.2.9 RSSI blast(串ID0x0019)广播 291
8.3 装载无线定位模式软件代码到网关 291
8.3.1 初始化物理地址 291
8.3.2 下载中心控制器软件 292
8.4 参考模块和定位模块设定和软件下载 293
8.4.1 参考模块和移动模块程序下载 293
8.4.2 设置物理地址 294
8.5 理解CC2431无线定位C51源代码 295
8.5.1 协调器代码 295
8.5.2 参考节点代码 302
8.5.3 定位节点代码 309
8.5.4 无线定位系统运行效果观察 321
8.6 习题与答案 322
第9章 矿井安全 无线定位网络系统 324
9.1 矿井井下无线定位网络原理和实现 324
9.2 系统各节点电路框图 325
9.3 理解无线定位网络应用程序C51源代码 327
9.3.1 液晶驱动程序 327
9.3.2 ZigBee协议栈和API调用说明 335
9.3.3 参考节点设计 341
9.3.4 定位节点设计 346
9.3.5 网关设计 350
9.4 实验效果 358
9.4.1 各节点上电复位后的数据 359
9.4.2 查看参考节点配置数据(参考节点请求配置(0x0017)) 360
9.4.3 参考节点配置数据(参考节点配置(0x0015)) 361
9.4.4 查看定位节点配置数据(定位节点请求配置(0x0018)) 363
9.4.5 定位节点配置参数(定位节点配置(0x0016)) 363
9.4.5 发现定位节点位置(发现定位节点请求(0x0013)) 364
9.5 习题和答案 365