第一部分 绪论 1
1无线通信 1
1.1前言 1
1.2无处不在的无线网络 1
1.3无线通信技术种类 2
1.3.1蓝牙技术 2
1.3.2 Wi-Fi技术 2
1.3.3 IrDA技术 3
1.3.4 NFC技术 3
1.3.5 UWB技术 4
1.3.6 ZigBee技术 5
1.4小结 5
第二部分ZigBee开发指南 6
2ZigBee概述 6
2.1 ZigBee技术的优势 6
2.2 ZigBee设备类型 6
2.3 ZigBee网络拓扑结构 7
2.4 ZigBee结构 8
2.4.1 ZigBee物理层 8
2.4.2 ZigBee多路访问层 9
2.4.3 ZigBee网络层 10
2.4.4 ZigBee应用层 11
2.4.5应用程序框架 11
2.4.6 ZigBee设备对象 11
2.4.7协议栈代码目录结构 11
2.5 ZigBee无线数据传输及通信模式 12
2.6 ZigBee性能分析 13
2.7 ZigBee的应用前景 13
3Z-Stack开发指南 14
3.1 Z-Stack使用 14
3.1.1设备类型 15
3.1.2栈配置 16
3.2寻址 16
3.2.1地址类型 16
3.2.2网络地址分配 16
3.2.3 Z-Stack寻址 17
3.2.4重要设备地址 18
3.3绑定 19
3.4路由 21
3.4.1概述 21
3.4.2路由协议 21
3.4.3表存储 22
3.5 ZDO消息请求 23
3.6便携式设备 23
3.7端到端确认 24
3.8其他 24
3.8.1配置信道 24
3.8.2配置PANID和要加入的网络 24
3.8.3最大有效载荷大小 25
3.8.4离开网络 25
3.8.5描述符 25
3.8.6非易失性存储项 25
3.9安全 26
3.9.1概述 26
3.9.2配置 26
3.9.3网络访问控制 27
3.9.4更新密码 27
3.10 Z-Stack应用分析 27
第三部分 物联网硬件开发基础 30
4龙芯处理器 30
4.1龙芯1C处理器 30
4.1.1体系结构框图 30
4.1.2芯片主要功能 31
4.2龙芯1B处理器 34
4.2.1体系结构框图 35
4.2.2芯片主要功能 35
5 龙芯1B通用核心板 39
5.1用途 39
5.2特点 39
5.3配置 39
6龙芯嵌入式开发板 40
6.1产品主要特征 41
6.2电路板简介 41
6.3应用领域 48
7 开发工具 49
7.1 IAR 49
7.1.1 IARFOR2530简介 49
7.1.2 IAR软件的安装 49
7.1.3软件的设置与调试 50
7.2 Visual Studio 2010 56
7.2.1 Visual Studio简介 56
7.2.2 Visual Studio的安装 57
7.3 Ubuntu Linux 9.04安装和配置教程 60
8 开发环境搭建 72
8.1调试开发环境搭建 72
8.1.1开发环境搭建 72
8.1.2交叉编译工具安装 72
8.1.3常用调试环境搭建 73
8.2基本开发 75
8.2.1 PMON 75
8.2.2 Kernel 76
8.3文件系统 77
8.3.1文件系统制作 77
8.3.2文件系统烧写 77
8.4附录 78
8.4.1 PMON常用命令 78
8.4.2 NandFlash分区说明 80
8.4.3 Windows超级终端使用说明 80
8.4.4 Minicom使用指南 83
8.4.5 PMON下常用操作 85
第四部分 C-MAC开发设计 87
9C-MAC与Loongson1B开发板 87
9.1简介 87
9.2产品特性 87
9.3应用范围 88
9.4电气参数 88
9.5管脚定义 88
9.6参考接口电路 89
9.7机械尺寸 90
10CC2530介绍 91
10.1 CC2530图样 91
10.2 CC2530概述 91
10.3 CC2530芯片的主要特点 93
10.4硬件应用电路 95
10.5 CC2530芯片的引脚功能 95
11C-MAC设计 97
11.1整体机构与功能 97
11.2系统组成的主要功能 97
11.3 C-MAC协议系统硬件 103
11.4 C-MAC协议的设计 103
11.5测试 108
12ZigBee硬件模块 110
12.1 ZigBee开发板硬件模块介绍 110
12.2 ZigBee通用底板介绍 110
12.3 ZigBee扩展板介绍 110
12.3.1 LED模块 111
12.3.2 PLC模块 111
12.3.3 RFID模块 111
12.3.4温湿度模块 112
12.3.5光强检测模块 112
12.3.6空气质量检测模块 113
12.3.7门磁报警模块 113
12.3.8亮度调制模块 114
13CC2530基础实验 115
13.1 I/O控制实验 115
13.2系统时钟实验 117
13.3串口通信实验 120
13.3.1串口发送 120
13.3.2串口接收 123
13.4定时器实验 125
13.4.1定时器1计数中断 125
13.4.2定时器2 127
13.4.3定时器4比较控制 130
13.5睡眠定时器实验 132
13.6 AD转换实验 135
13.7看门狗实验 137
13.8随机数生成器实验 139
13.9 DMA传输实验 141
13.10 RF无线通信实验 145
14ZigBee组网通信实验 150
14.1协调器建立网络 150
14.1.1 ZigBee设备区分 150
14.1.2 ZigBee选择网络拓扑 151
14.1.3建立网络 152
14.2节点加入网络 160
14.2.1节点通过MAC层关联过程加入网络 160
14.2.2节点通过预先指定的父设备加入网络 162
14.2.3协议栈代码分析 163
14.2.4应用层代码解析 167
14.3基于GenericApp例程之LED控制实验 168
14.4基于GenericApp例程之按键实验 170
14.4.1基于GenericApp例程之按键轮训实验 171
14.4.2基于GenericApp例程之按键中断实验 172
14.5基于GenericApp例程串口功能的实现 175
14.6接收串口数据帧处理 177
14.7 ZigBee组网地址传递 179
14.8接收网络发来的数据 180
15 基于ZigBee物联网实验箱各功能模块的实现 186
15.1LED控制 186
15.2 PLC控制 187
15.3 RFID识别 189
15.4温湿度检测 192
15.5光强检测 194
15.6空气质量检测 196
15.7亮度调制 198
15.8门磁报警 199
16 龙芯开发板硬件平台 202
16.1嵌入式Linux系统移植 202
16.1.1 BootLoader移植 202
16.1.2 PMON编译 202
16.1.3 PMON烧写与更新 202
16.2 Linux内核移植 203
16.2.1内核配置 203
16.2.2内核编译与移植 204
16.3文件系统和应用程序移植 204
16.3.1根文件系统制作 204
16.3.2应用程序移植 207
16.4 QT移植 208
16.4.1 tslib移植 208
16.4.2 QT源码编译 209
16.5上位机控制平台制作 209
16.6 Nginx+php的Web服务器制作 213
16.7 Nginx移植 214
16.8 php移植 217
16.9基于QT的上位机控制平台 218
16.10基于Linux C的网关程序设计 221
第五部分 物联网实战 230
17物联网实战教学实验箱 230
17.1智能农业 230
17.1.1物联网业务平台 230
17.1.2关键技术概述 231
17.1.3重点解决的问题 233
17.2智能家居 241
17.2.1采用的关键技术 241
17.2.2系统方案 245
17.2.3智能家居示范案例 249
17.3智能医疗 250
17.3.1关键技术概述 250
17.3.2示范内容和方式 252
17.3.3技术方案 255
附录Z-Stack应用层数据传输协议 260
参考文献 262