上篇 基于TinyOS 2.x操作系统的应用设计 3
第1章 TinyOS程序设计原理 3
1.1 TinyOS操作系统 3
1.1.1 TinyOS简介 3
1.1.2 TinyOS的特点 4
1.1.3 TinyOS调度机制 5
1.1.4 TinyOS通信模型 5
1.1.5 TinyOS能源效率 6
1.2 NesC简单程序示例 6
1.2.1 NesC语言简介 6
1.2.2 NesC语言的特点 7
1.2.3 NesC简单程序示例 7
1.2.4 NesC编程结构 8
1.3 NesC编程语法 9
1.3.1 代码页格式 9
1.3.2 NesC编程语法 10
本章小结 11
习题 12
第2章 TinyOS LED控制 13
2.1 LED控制任务描述 13
2.1.1 任务描述 13
2.1.2 LED控制项目结构 14
2.1.3 应用基础 14
2.2 程序的结构与模型 16
2.2.1 程序结构 16
2.2.2 程序模型 17
2.3 应用Task控制LED 18
2.3.1 LED控制程序源码 18
2.3.2 LED控制原理 19
2.3.3 扩展分析 20
2.4 应用Event控制LED 20
2.4.1 LED控制程序源码 20
2.4.2 LED控制原理 21
2.4.3 扩展分析 21
本章小结 22
习题 22
第3章 串口通信 24
3.1 串口通信任务描述 24
3.1.1 任务描述 24
3.1.2 串口通信项目结构 25
3.1.3 应用基础 25
3.2 程序的结构与模型 27
3.2.1 程序结构 27
3.2.2 程序模型 28
3.3 串口通信程序设计 28
3.3.1 串口通信程序源码 28
3.3.2 串口通信原理 33
3.3.3 扩展分析 34
本章小结 35
习题 35
第4章 定时器 37
4.1 定时器控制任务描述 37
4.1.1 任务描述 37
4.1.2 定时器控制项目结构 37
4.1.3 应用基础 38
4.2 程序的结构与模型 40
4.2.1 程序结构 40
4.2.2 程序模型 40
4.3 定时器控制 41
4.3.1 定时器应用程序源码 41
4.3.2 定时器控制原理 43
4.3.3 扩展分析 43
本章小结 44
习题 44
第5章 光敏传感器测量 46
5.1 光敏传感器测量任务描述 46
5.1.1 任务描述 46
5.1.2 光敏传感器测量项目结构 46
5.1.3 应用基础 47
5.2 程序的结构与模型 50
5.2.1 程序结构 50
5.2.2 程序模型 50
5.3 光敏传感器测量程序 51
5.3.1 光敏传感器测量程序源码 51
5.3.2 光敏传感器测量原理 54
5.3.3 扩展分析 55
本章小结 56
习题 57
第6章 射频通信 58
6.1 射频通信任务描述 58
6.1.1 任务描述 58
6.1.2 射频通信项目结构 59
6.1.3 应用基础 60
6.2 程序的结构与模型 64
6.2.1 程序结构 64
6.2.2 程序模型 65
6.3 射频数据通信实践 66
6.3.1 射频数据通信实践程序源码 66
6.3.2 射频数据通信原理 69
6.3.3 扩展分析 69
6.4 MAC协议组网实践 70
6.4.1 MAC协议组网实践程序源码 70
6.4.2 MAC协议组网原理 72
6.4.3 扩展分析 73
本章小结 75
习题 75
第7章 低功耗RF控制 76
7.1 低功耗RF控制任务描述 76
7.1.1 任务描述 76
7.1.2 低功耗RF控制项目结构 76
7.1.3 应用基础 77
7.2 程序的结构与模型 80
7.2.1 程序结构 80
7.2.2 程序模型 81
7.3 低功耗MAC协议实践 82
7.3.1 低功耗MAC协议实践程序源码 82
7.3.2 低功耗RF控制原理 85
7.3.3 扩展分析 86
本章小结 86
习题 87
第8章 节点RSSI的测量 89
8.1 节点RSSI测量任务描述 89
8.1.1 任务描述 89
8.1.2 节点RSSI测量项目结构 89
8.1.3 应用基础 90
8.2 程序的结构与模型 92
8.2.1 程序结构 92
8.2.2 程序模型 93
8.3 基于RSSI的节点测距 93
8.3.1 基于RSSI的节点测距源码 93
8.3.2 基于RSSI的节点测距原理 96
8.3.3 扩展分析 97
本章小结 99
习题 100
第9章 路由协议 102
9.1 路由协议通信任务描述 102
9.1.1 任务描述 102
9.1.2 路由协议通信项目结构 103
9.1.3 应用基础 103
9.2 程序的结构与模型 105
9.2.1 程序结构 105
9.2.2 程序模型 106
9.3 路由协议通信应用程序 107
9.3.1 路由协议通信程序源码 107
9.3.2 路由协议通信程序分析 110
9.3.3 扩展分析 111
9.4 路由协议组件设计 113
9.4.1 路由协议数据结构 113
9.4.2 Flooding路由协议组件设计 113
9.4.3 Gossiping路由组件设计 115
9.4.4 扩展分析 117
本章小结 117
习题 117
下篇 基于ZigBee PRO协议的应用设计 123
第10章 ZigBee技术概述 123
10.1 ZigBee技术简介 123
10.1.1 ZigBee的概念 123
10.1.2 ZigBee设备类型 124
10.1.3 ZigBee射频通道 124
10.1.4 ZigBee网络拓扑结构 125
10.1.5 ZigBee网络地址 126
10.1.6 ZigBee技术特点 126
10.2 ZigBee软件协议栈 128
10.2.1 Z-Stack协议简介 128
10.2.2 Z-Stack的工作原理 128
10.2.3 Z-Stack的分层 129
10.3 CC2530应用电路 130
10.3.1 CC2530芯片的器件特性 130
10.3.2 CC2530的功能结构 131
10.3.3 CC2530的应用电路设计 132
本章小结 135
习题 135
第11章 CC2530 GPIO控制 137
11.1 GPIO接口输出控制 137
11.1.1 GPIO接口控制基础 137
11.1.2 GPIO接口输出控制 138
11.1.3 GPIO输出控制效果 139
11.2 GPIO接口输入控制 139
11.2.1 GPIO接口控制基础 139
11.2.2 GPIO接口输入控制 140
11.2.3 GPIO输入控制效果 142
11.3 GPIO接口中断控制 142
11.3.1 GPIO接口的中断控制 142
11.3.2 GPIO接口中断控制 144
11.3.3 GPIO中断控制效果 146
本章小结 146
习题 146
第12章 CC2530 UART接口控制 149
12.1 UART串口输出控制 149
12.1.1 UART发送控制 149
12.1.2 UART接口的数据发送 151
12.2 UART串口收发控制 153
12.2.1 UART接口收发控制 153
12.2.2 UART接口收发控制程序 154
12.3 UART串口时钟显示控制 157
12.3.1 UART接口时钟显示控制 157
12.3.2 UART时钟显示控制程序 157
本章小结 161
习题 162
第13章 CC2530定时器控制 163
13.1 Timer1定时控制 163
13.1.1 Timer1应用基础 163
13.1.2 Timer1定时应用 164
13.2 Timer3定时控制 166
13.2.1 Timer3应用基础 166
13.2.2 Timer3定时控制程序 167
13.3 Timer4定时控制 170
13.3.1 Timer4应用基础 170
13.3.2 Timer4定时输出PWM波 172
本章小结 174
习题 174
第14章 片内ADC测温 176
14.1 片内ADC测温寄存器 176
14.1.1 片内ADC测温基础 176
14.1.2 片内ADC测温寄存器 177
14.2 片内ADC测温应用 180
14.2.1 片内ADC测温程序 180
14.2.2 数据校准 183
本章小结 185
习题 186
第15章 Z-Stack协议通信 187
15.1 Z-Stack协议简介 187
15.1.1 Z-Stack协议的概念 187
15.1.2 Z-Stack协议的工作流程 189
15.1.3 OSAL中的任务处理 189
15.2 Z-Stack无线自组网 190
15.2.1 SampleApp工程源码 190
15.2.2 SampleAPP工程分析 196
15.2.3 网络管理 199
15.3 Z-Stack串口通信 201
15.3.1 任务描述 201
15.3.2 程序设计 201
15.3.3 Z-Stack串口通信分析 203
本章小结 206
习题 206
第16章 Z-Stack点对点无线测温 208
16.1 无线测温基础 208
16.1.1 点对点通信结构 208
16.1.2 射频数据包格式 209
16.1.3 点对点无线测温网络基础 210
16.2 无线测温协调器程序 210
16.2.1 GenericAPP头文件 210
16.2.2 GenericApp应用程序 211
16.3 无线测温终端设备程序 213
16.3.1 传感器驱动程序源码 213
16.3.2 终端设备测温程序源码 214
本章小结 217
习题 217
第17章 Z-Stack组播与广播 219
17.1 组播与广播通信 219
17.1.1 组播与广播的概念 219
17.1.2 组播与广播的结构设计 220
17.1.3 组播与广播的应用 224
17.2 组播的应用实践 224
17.3 广播的应用实践 227
本章小结 228
习题 229
第18章 Z-Stack协议组网 231
18.1 Z-Stack协议网络拓扑控制 231
18.1.1 Z-Stack组网控制 231
18.1.2 PAN ID与网络地址 234
18.1.3 Z-Stack组网实践 238
18.2 网络传感器测量原理 243
18.2.1 Z-Stack模板结构与功能 243
18.2.2 SimpleApp工程测量原理 243
18.2.3 传感器测量程序分析 244
18.3 Z-Stack网络管理 253
18.3.1 网络状态指示 254
18.3.2 网络管理器 254
18.3.3 网际通信 256
本章小结 258
习题 258
附录A CC2530射频模块的电路原理图 263
附录B CC2530模块的底板电路原理图 264
附录C 无线传感器网络的缩略语 265
参考文献 267