低功耗蓝牙开发与实战

低功耗蓝牙开发与实战
作 者: 谭晖
出版社: 北京航空航天大学出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《低功耗蓝牙开发与实战》作者简介

内容简介

本书及相关实验系统针对目前发展迅速的智能硬件和移动物联两个主流方向,从低功耗蓝牙无线SOC开始入手,再进阶到低功耗蓝牙协议栈的开发、最后通过心率计、血压计、温湿度传感器和计步器等设备与手机互联的热门应用的实战演练,让开发者迅速熟悉和掌握低功耗蓝牙开发的技能。实验箱系统具备完整的教学资源和教学内容,包括:ARMCortexGM0微处理器基础实验,无线数据通信实验,低功耗蓝牙无线通信实验,WSN低功耗蓝牙无线传感器,低功耗蓝牙血压计,低功耗蓝牙计步器,低功耗蓝牙心率计,以及APP开发等内容。本书可作为高等院校物联网、计算机、电子、自动化、仪器仪表等专业嵌入式系统、微机接口、单片机、物联网技术等课程的教材,也适合广大从事物联网、智能硬件应用系统开发的工程技术人员作为学习、参考用书。

图书目录

第1章 蓝牙的发展历程……………………………………………………………… 1

1.1 什么是蓝牙及蓝牙联盟? …………………………………………………… 1

1.2 低功耗蓝牙技术(BluetoothLowEnergy)的发展………………………… 2

1.2.1 低功耗蓝牙的诞生……………………………………………………… 2

1.2.2 关于蓝牙3.0 …………………………………………………………… 4

1.2.3 关于蓝牙4.0 …………………………………………………………… 4

1.2.4 蓝牙4.0的双模式及单模式应用……………………………………… 5

1.2.5 关于蓝牙4.1 …………………………………………………………… 7

1.2.6 关于蓝牙4.2 …………………………………………………………… 7

第2章 低功耗蓝牙基础……………………………………………………………… 9

2.1 什么是低功耗? ……………………………………………………………… 9

2.2 低功耗蓝牙如何实现低功耗? ……………………………………………… 10

2.2.1 待机功耗的减少………………………………………………………… 10

2.2.2 快速连接的实现………………………………………………………… 10

2.2.3 峰值功耗的降低………………………………………………………… 11

2.2.4 以时间来换取能量……………………………………………………… 12

第3章 实验平台硬件资源详解…………………………………………………… 14

3.1 移动互联综合应用开发系统资源介绍……………………………………… 14

3.1.1 XT EDU AK介绍………………………………………………… 15

3.1.2 XT EDU HK介绍………………………………………………… 16

3.1.3 配套传感器模块和OLED屏介绍…………………………………… 16

3.1.4 Debug调试接口………………………………………………………… 18

3.2 部分硬件电路原理图详解…………………………………………………… 18

3.2.1 nRF51822蓝牙模块电路……………………………………………… 18

3.2.2 XT EDU AK主板………………………………………………… 19

3.3 归纳总结……………………………………………………………………… 21

第4章 开发环境的搭建…………………………………………………………… 22

4.1 综合开发环境nRFgoStudio的使用……………………………………… 22

4.2 主机软件MasterControlPannel的使用………………………………… 25

4.3 KeilMDK开发环境下的调试方法………………………………………… 29

4.4 学习资料文档、工具介绍…………………………………………………… 32

4.5 nRF51Dongle的使用……………………………………………………… 32

4.5.1 与MasterControlPannel配合,作为主机进行使用………………… 32

4.5.2 与wireshark配合,更新为sniffer的固件,作为抓包工具使用……… 35

4.6 归纳总结……………………………………………………………………… 44

第5章 GPIO 的使用……………………………………………………………… 45

5.1 GPIO简介…………………………………………………………………… 45

5.2 硬件设计……………………………………………………………………… 49

5.3 软件设计……………………………………………………………………… 50

5.3.1 跑马灯实验……………………………………………………………… 50

5.3.2 按键输入实验…………………………………………………………… 51

5.4 归纳总结……………………………………………………………………… 53

第6章 GPIOTE的使用…………………………………………………………… 54

6.1 GPIOTE简介……………………………………………………………… 54

6.2 硬件设计……………………………………………………………………… 56

6.3 软件设计……………………………………………………………………… 57

6.4 归纳总结……………………………………………………………………… 59

第7章 玩转SPI主从……………………………………………………………… 60

7.1 SPI简介……………………………………………………………………… 60

7.2 硬件设计……………………………………………………………………… 62

7.3 软件设计……………………………………………………………………… 63

7.4 归纳总结……………………………………………………………………… 69

第8章 有趣的UART ……………………………………………………………… 70

8.1 UART简介………………………………………………………………… 70

8.2 硬件设计……………………………………………………………………… 74

8.3 软件设计……………………………………………………………………… 75

8.4 归纳总结……………………………………………………………………… 77

第9章 TIMER 详解………………………………………………………………… 78

9.1 TIMER简介………………………………………………………………… 78

9.2 硬件设计……………………………………………………………………… 81

9.3 软件设计……………………………………………………………………… 82

9.4 归纳总结……………………………………………………………………… 84

第10章 RTC实时时钟定时器…………………………………………………… 85

10.1 RTC简介…………………………………………………………………… 85

10.1.1 计数器COUNTER ………………………………………………… 86

10.1.2 分频器PRESCALER ………………………………………………… 86

10.1.3 TICK事件发生器…………………………………………………… 86

10.2 硬件设计…………………………………………………………………… 87

10.3 软件设计…………………………………………………………………… 88

10.3.1 LED灯初始化………………………………………………………… 89

10.3.2 LFCLK初始化……………………………………………………… 89

10.3.3 RTC初始化…………………………………………………………… 89

10.3.4 中断处理函数………………………………………………………… 90

10.4 归纳总结…………………………………………………………………… 91

第11章 PPI的应用之PWM ……………………………………………………… 92

11.1 PWM 简介………………………………………………………………… 92

11.2 硬件设计…………………………………………………………………… 94

11.3 软件设计…………………………………………………………………… 95

11.4 归纳总结…………………………………………………………………… 98

第12章 ADC实验与电压检测…………………………………………………… 99

12.1 ADC简介…………………………………………………………………… 99

12.2 硬件设计…………………………………………………………………… 101

12.3 软件设计…………………………………………………………………… 102

12.4 归纳总结…………………………………………………………………… 104

第13章 TWI的应用———温湿度采集…………………………………………… 105

13.1 TWI简介………………………………………………………………… 105

13.2 硬件设计…………………………………………………………………… 109

13.3 软件设计…………………………………………………………………… 110

13.4 归纳总结…………………………………………………………………… 115

第14章 随机数发生器RNG …………………………………………………… 117

14.1 RNG简介………………………………………………………………… 117

14.2 硬件设计…………………………………………………………………… 118

14.3 软件设计…………………………………………………………………… 118

14.4 归纳总结…………………………………………………………………… 119

第15章 AES加密的使用………………………………………………………… 120

15.1 AESECB简介…………………………………………………………… 120

15.2 硬件设计…………………………………………………………………… 121

15.3 软件设计…………………………………………………………………… 121

15.4 归纳总结…………………………………………………………………… 123

第16章 2.4G 无线通信实验……………………………………………………… 124

16.1 2.4G射频简介…………………………………………………………… 124

16.2 硬件设计…………………………………………………………………… 133

16.3 软件设计…………………………………………………………………… 133

16.4 归纳总结…………………………………………………………………… 136

第17章 HelloBLE ……………………………………………………………… 137

17.1 低功耗蓝牙简介…………………………………………………………… 137

17.2 硬件设计…………………………………………………………………… 140

17.3 软件设计…………………………………………………………………… 140

17.4 归纳总结…………………………………………………………………… 143

第18章 低功耗处理……………………………………………………………… 144

18.1 BLE低功耗处理简介…………………………………………………… 144

18.1.1 电源管理的特点……………………………………………………… 144

18.1.2 两种不同的电源模式比较…………………………………………… 144

18.1.3 外设模块启动后的功耗预估………………………………………… 145

18.1.4 低功耗在软件中的设置……………………………………………… 146

18.2 硬件设计…………………………………………………………………… 151

18.3 软件设计…………………………………………………………………… 151

18.4 归纳总结…………………………………………………………………… 152

第19章 低功耗蓝牙协议栈下的Flash操作…………………………………… 157

19.1 存储管理器(PersistentStorageManager)简介………………………… 157

19.1.1 API功能介绍………………………………………………………… 159

19.1.2 初始化………………………………………………………………… 160

19.1.3 注册模块……………………………………………………………… 160

19.1.4 获取指定Block的Handle ………………………………………… 161

19.1.5 读取Flash中的数据………………………………………………… 161

19.1.6 存储数据……………………………………………………………… 162

19.1.7 清除数据……………………………………………………………… 163

19.1.8 更新数据……………………………………………………………… 164

19.1.9 获取对Flash操作挂起的任务数量………………………………… 165

19.2 硬件设计…………………………………………………………………… 166

19.3 软件设计…………………………………………………………………… 166

19.4 归纳总结…………………………………………………………………… 170

第20章 OLED 显示屏应用……………………………………………………… 172

20.1 OLED显示屏简介………………………………………………………… 172

20.2 硬件设计…………………………………………………………………… 173

20.3 软件设计…………………………………………………………………… 174

20.4 归纳总结…………………………………………………………………… 180

第21章 DFU 固件空中升级……………………………………………………… 182

21.1 DFU 简介………………………………………………………………… 182

21.2 硬件设计…………………………………………………………………… 186

21.3 软件设计…………………………………………………………………… 187

21.4 归纳总结…………………………………………………………………… 188

21.4.1 烧录固件到实验板…………………………………………………… 188

21.4.2 将.axf生成.bin文件……………………………………………… 189

21.4.3 使用zip文件在手机进行DFU …………………………………… 192

第22章 低功耗蓝牙主机端应用………………………………………………… 194

22.1 低功耗蓝牙主机简介……………………………………………………… 194

22.2 硬件设计…………………………………………………………………… 196

22.3 软件设计…………………………………………………………………… 197

22.4 归纳总结…………………………………………………………………… 202

第23章 低功耗蓝牙血压计……………………………………………………… 204

23.1 低功耗蓝牙血压计简介…………………………………………………… 204

23.2 硬件设计…………………………………………………………………… 205

23.3 软件设计…………………………………………………………………… 206

23.4 归纳总结…………………………………………………………………… 211

第24章 低功耗蓝牙温湿度计…………………………………………………… 214

24.1 温湿度计简介……………………………………………………………… 214

24.2 硬件设计…………………………………………………………………… 215

24.3 软件设计…………………………………………………………………… 216

24.4 归纳总结…………………………………………………………………… 220

第25章 低功耗蓝牙计步器……………………………………………………… 221

25.1 计步器简介………………………………………………………………… 221

25.2 硬件设计…………………………………………………………………… 222

25.3 软件设计…………………………………………………………………… 223

25.4 归纳总结…………………………………………………………………… 230

第26章 低功耗蓝牙心率计……………………………………………………… 231

26.1 心率计简介………………………………………………………………… 231

26.2 硬件设计…………………………………………………………………… 231

26.3 软件设计…………………………………………………………………… 234

26.4 归纳总结…………………………………………………………………… 238

参考文献……………………………………………………………………………… 240