第1章 电波传播基础 1
1.1 电磁波以及无线通信技术的发展 1
1.1.1 奥斯特实验 1
1.1.2 法拉第电磁感应实验 1
1.1.3 麦克斯韦方程组 2
1.1.4 赫兹电磁波实验 2
1.1.5 马可尼无线电报实验 3
1.1.6 无线电通信技术的发展历史 3
1.2 电波传播分析 4
1.2.1 无线系统链路动态范围 5
1.2.2 自由空间电波传播损耗 5
1.2.3 无线电信号的穿透损耗 8
1.2.4 无线电波的反射、散射、绕射及多径效应 9
第2章 天线基本原理 14
2.1 天线的作用 14
2.2 关于天线的一些其他问题 18
2.3 偶极子天线 19
2.4 单极天线 20
2.4.1 鞭状天线 21
2.4.2 倒F天线 21
2.4.3 蛇形天线 23
2.4.4 片状天线 24
2.5 周围物体对天线性能的影响及考虑 28
2.5.1 金属物体对天线性能的影响 28
2.5.2 介电材料对天线性能的影响 28
2.6 天线的调谐 28
2.6.1 天线的初步调谐 29
2.6.2 天线的最后调谐 30
2.7 天线小型化的考虑 31
2.8 如何检查天线的设计 33
2.9 关于巴伦 33
2.10 关于阻抗及阻抗匹配 35
第3章 nRF51822开发实验环境的搭建 36
3.1 nRF51822的开发环境简介 36
3.2 nRF51-DK开发包 36
3.2.1 nRF51开发板 36
3.2.2 nRFgo Studio综合开发环境 36
3.2.3 Keil MDK-ARM开发工具 39
3.2.4 nRF51 SDK软件开发包(Software Development Kit) 39
3.3 nRF51 Dongle 40
3.3.1 配合Master Control Panel,作为低功耗蓝牙主机使用 41
3.3.2 配合nRF Sniffer工具和Wireshark,作为低功耗蓝牙嗅探器使用 42
3.4 智能手机端的低功耗蓝牙开发调试工具 49
3.4.1 主机控制面板Master Control Pannel 50
3.4.2 nRF Toolbox工具软件 54
3.4.3 LightBlue工具软件 54
3.5 XT-EDU移动互联综合应用开发系统 59
3.5.1 移动互联综合应用开发系统资源介绍 59
3.5.2 XT-EDU-AK介绍 59
3.5.3 XT-EDU-HK介绍 60
3.5.4 配套传感器模块和OLED屏介绍 61
3.5.5 J-Link开发仿真工具 62
3.5.6 XT-EDU-AK主板系统框图 63
3.6 低功耗蓝牙模块 63
3.6.1 纽扣电池大小的嵌入式低功耗蓝牙模块PTR5518 63
3.6.2 指尖大小的超小型低功耗蓝牙模块PTR5528 65
3.6.3 PTR9018全I/O型低功耗蓝牙模块 66
3.6.4 PTR9018+外接天线低功耗蓝牙模块 69
第4章 如何创建低功耗蓝牙应用 72
4.1 创建nRF51822的低功耗蓝牙应用 72
4.2 低功耗蓝牙各层介绍 72
4.2.1 Generic Access Profile通用访问配置文件(GAP) 73
4.2.2 Generic Attribute Profile通用属性配置文件(GATT) 75
4.2.3 标准和自定义服务与特性 76
4.2.4 UUID 76
4.2.5 空中操作和属性 77
4.3 最基本的低功耗蓝牙应用概述 78
4.3.1 初始化概述 78
4.3.2 S110协议栈 79
4.3.3 连接参数 79
4.3.4 服务 80
4.3.5 特性 80
4.4 LED按键应用范例 80
4.4.1 代码概述 81
4.4.2 源代码 83
4.4.3 建立 83
4.4.4 Implementing the service实现服务 84
4.4.5 应用实现 91
4.5 测试应用 97
第5章 Android下的低功耗蓝牙编程开发 102
5.1 关于Android 102
5.2 Android的开发环境 103
5.2.1 Java SE development kit安装 103
5.2.2 Eclipse开发环境 107
5.3 Android下低功耗蓝牙APP的开发 116
5.3.1 开始Android的低功耗蓝牙编程 117
5.3.2 扫描外围设备 118
5.3.3 与低功耗蓝牙(智能蓝牙)设备进行通信 127
第6章 iOS下的低功耗蓝牙编程开发 151
6.1 关于iOS 151
6.2 iOS开发入门 152
6.2.1 iOS开发前主要步骤 152
6.2.2 苹果商店APP Store 152
6.2.3 创建Apple ID 153
6.2.4 关于Xcode 155
6.3 iOS下低功耗蓝牙APP的开发及实验 162
6.3.1 创建一个新的Xcode项目 162
6.3.2 导入封装包文件 164
6.3.3 扫描外设 165
6.4 iOS与低功耗蓝牙设备通信 178
6.4.1 连接到设备 178
6.4.2 读取RSSI值 192
6.4.3 扫描服务 195
6.4.4 查询特性 197
6.4.5 读写特性 198
6.4.6 按键按下时智能蓝牙设备发声 202
6.4.7 手机在Link loss链路断开时声音提醒 204
第7章 Windows 8下的低功耗蓝牙开发 207
7.1 关于Windows 8 207
7.2 Windows 8与低功耗蓝牙 207
7.3 低功耗蓝牙设备的扫描 208
7.3.1 创建一个新的Windows Phone工程 208
7.3.2 智能手机扫描外设 208
7.3.3 智能手机扫描外设 212
7.4 与低功耗蓝牙设备通信 212
7.4.1 添加页面来控制蓝牙设备 212
7.4.2 添加外设控制页Peripheral Control Page 212
第8章 低功耗蓝牙/2.4GHz无线桌面套装设计 221
8.1 无线桌面套装 221
8.2 2.4GHz/低功耗蓝牙无线桌面套装介绍 222
8.3 nRF6927——2.4GHz/低功耗蓝牙无线桌面套装之无线键盘 223
8.3.1 无线键盘系统框图 223
8.3.2 键盘矩阵 223
8.3.3 nRF51822无线模块 225
8.3.4 NFC模块 227
8.4 nRF6927——2.4GHz/低功耗蓝牙无线桌面套装之无线鼠标 230
8.4.1 2.4GHz/低功耗蓝牙无线鼠标系统框图 230
8.4.2 无线及处理器部分 230
8.4.3 DC/DC转换 231
8.4.4 光学传感部分 232
8.4.5 按键、滚轮及连接器原理图 233
8.4.6 无线鼠标PCB布局图 233
8.5 多协议无线桌面套装的软件设计 233
8.5.1 软件系统架构 235
8.5.2 电源管理 236
8.5.3 多协议实现 237
8.5.4 无线鼠标软件流程图 237
8.5.5 无线键盘软件流程图 238
8.5.6 NFC模块软件流程图 240
8.5.7 无线USB适配器软件流程图 244
8.6 nRF6928——2.4GHz无线USB适配器 253
8.6.1 无线USB适配器系统框图 254
8.6.2 无线USB原理图 254
第9章 可穿戴技术及智能手环设计 256
9.1 关于可穿戴技术 256
9.2 关于智能手环 258
9.3 智能手环的硬件实现 258
9.3.1 低功耗蓝牙射频以及处理器 259
9.3.2 加速度传感器 259
9.3.3 系统电源管理电路 261
9.3.4 振动马达及驱动电路 264
9.3.5 智能手环原理图 265
9.4 智能手环运动检测的原理 266
9.5 计步算法实现的流程图 269
9.6 智能手环的计步软件总体流程图 270
第10章 智能家居之智能LED灯设计 272
10.1 智能家居概述 272
10.2 低功耗蓝牙与智能家居 272
10.3 苹果公司的智能家居解决方案 273
10.4 谷歌的智能家居解决方案 274
10.5 智能LED灯 274
10.5.1 智能LED灯的构成框图 276
10.5.2 BLE低功耗蓝牙模块以及软件设计 277
10.5.3 LED驱动模块 278
10.5.4 电源模块 281
10.5.5 智能LED灯APP软件 283
10.6 低功耗蓝牙无线MESH网络 284
10.6.1 点到点的连接 284
10.6.2 点到多点的连接 284
10.6.3 Mesh Network连接 286
10.6.4 低功耗蓝牙无线Mesh网络 286
10.6.5 基于Mesh的低功耗智能蓝牙LED灯Mesh网络系统 287
第11章 关于Beacon原理及应用 291
11.1 什么是iBeacon 291
11.2 iBeacon的应用场景 293
11.3 深入了解iBeacon的工作模式 297
11.4 iBeacon的数据格式 298
11.5 一个iBeacon演示系统的实现 302
11.5.1 Beacon硬件 302
11.5.2 iBeacon硬件框图 302
11.5.3 iBeacon硬件设计原理图 302
11.5.4 iOS下的Beacon应用演示软件 303
11.6 iBeacon的最新发展 305
11.7 iBeacon在国内最新应用 306
11.7.1 iBeacon在北京首都机场实现室内导航 306
11.7.2 iBeacon在微信中的应用 306
11.7.3 iBeacon在支付宝中的应用 308
11.7.4 各种应用场景的iBeacon 309
11.7.5 iBeacon配置工具 313
11.8 xBeacon开发工具包 317
11.8.1 xBeacon的SDK开发工具包简介 317
11.8.2 应用程序初始化 318
11.8.3 开始搜索附近蓝牙设备 318
11.8.4 停止搜索 319
11.8.5 xBeacon中常用的重要参数列表 323
第12章 关于蓝牙认证及测试 324
12.1 关于蓝牙认证与测试 324
12.2 低功耗蓝牙测试原理 324
12.3 测试流程 324
12.3.1 发射机测试流程 326
12.3.2 接收机测试流程 327
12.4 蓝牙测试命令 327
12.5 nRF51822测试用工程文件及使用方法 329
12.5.1 射频测试radio_test_example 329
12.5.2 DTM模式测试采用SDK以及nRF51-DK测试 331
12.5.3 采用专用的蓝牙测试仪器测试 332
12.5.4 PTS配置文件调整工具 333
参考文献 334