内容简介
《蓝牙4.0BLE开发完全手册:物联网开发技术实战》采用理论与实践相结合的思想,介绍了蓝牙4.0 BLE技术的基础知识、开发环境以及硬件资源;通过相关的配套实验,结合丰富的示例工程,针对蓝牙4.0 BLE技术开发过程中的重点、难点问题进行了详细的讲解,使读者能够逐步了解蓝牙4.0 BLE无线网络的开发流程并快速全面地掌握开发过程中需要注意的问题,同时给出了部分开发经验和技巧供读者参考。
《蓝牙4.0BLE开发完全手册:物联网开发技术实战》循序渐进、内容完整、实用性强,以教材方式组织内容,可供蓝牙4.0 BLE技术开发的初学者以及向无线网络开发转型的工程师使用,也可作为高等院校电子、通信、自动控制等相关专业的学习用书。
目录
第1章 蓝牙4.0 BLE简介
1.1 无线网络数据传输协议对比
1.2 短距离无线网络的分类
1.2.1 什么是蓝牙4.0 BLE
1.2.2 蓝牙4.0 BLE的特点
1.3 蓝牙4.0 BLE协议简介
1.4 蓝牙4.0 BLE无线网络通信信道分析
1.5 蓝牙4.0 BLE无线网络拓扑结构
1.6 蓝牙4.0 BLE技术在物联网的应用
1.7 CC2540开发板硬件资源概述
1.8 本章小结
[扩展阅读]蓝牙技术发展历程
第2章 IAR集成开发环境
2.1 IAR集成开发环境简介
2.2 工程的编辑与修改
2.2.1 建立一个新工程
2.2.2 建立一个源文件
2.2.3 添加源文件到工程
2.2.4 工程设置
2.2.5 源文件的编译
2.3 本章小结
[扩展阅读]模块化编程技巧
第3章 CC2540开发板硬件资源
3.1 CC2540核心板硬件资源
3.1.1 CC2540简介
3.1.2 天线及巴伦匹配电路设计
3.1.3 晶振电路设计
3.1.4 电源电路设计
3.1.5 LED电路设计
3.1.6 AD转换电路设计
3.1.7 串口电路设计
3.2 仿真调试与下载
3.2.1 仿真调试下载器驱动的安装
3.2.2 程序仿真调试
3.2.3 结合SmartRFFlashProgrammer软件实现程序下载
3.2.4 读取CC2540蓝牙设备的IEEE地址
3.3 本章小结
[扩展阅读]天线基础理论
第4章 CC2540基础实验
4.1 流水灯基础实验
4.2 定时器/计数器基础实验
4.3 定时器/计数器高级实验——定时器中断
4.4 UART串口基础实验
4.5 UART串口高级实验
4.6 UART串口编程高级技巧
4.7 AD转换实验之测量VDD实验
4.8 AD转换实验之温度采集实验
4.9 本章小结
[扩展阅读]可变参数函数的使用技巧
第5章 蓝牙4.0 BLE技术入门
5.1 蓝牙4.0 BLE协议栈
5.1.1 什么是蓝牙4.0 BLE协议栈
5.1.2 如何使用蓝牙4.0 BLE协议栈
5.1.3 蓝牙4.0 BLE协议栈的安装、编译与下载
5.2 深入理解蓝牙4.0 BLE协议栈的构成
5.2.1 BLE协议栈基础
5.2.2 BLE协议栈开发平台配置
5.2.3 BLE协议栈执行流程浅析
5.3 操作系统抽象层
5.3.1 OSAL常用术语
5.3.2 OSAL运行机理
5.3.3 OSAL消息队列
5.3.4 OSAL添加新任务
5.3.5 OSAL应用编程接口
5.4 硬件抽象层
5.4.1 硬件抽象层文件目录
5.4.2 硬件抽象层驱动编译
5.4.3 用户自定义驱动
5.5 配置文件层
5.5.1 通用访问配置文件(GAP)
5.5.2 通用属性配置文件(GATT)
5.5.3 使用GAP和GATT的堆栈API
5.6 蓝牙4.0 BLE协议栈中串口应用详解
5.6.1 串口收发实验
5.6.2 实例测试
5.6.3 串口工作原理剖析
5.7 本章小结
[扩展阅读]OSI七层模型及协议栈分层思想
第6章 蓝牙4.0 BLE无线网络技术
6.1 蓝牙无线网络节点设备示例工程
6.1.1 工程概述
6.1.2 初始化
6.1.3 周期事件
6.1.4 外设状态通知回调
6.1.5 按键服务
6.1.6 LCD显示
6.2 蓝牙无线网络集中器示例工程
6.2.1 工程概述
6.2.2 初始化
6.2.3 事件处理
6.2.4 回调函数
6.2.5 服务发现
6.3 网络处理器工程简介
6.3.1 工程概述
6.3.2 BLE协议栈的外部设备控制
6.4 本章小结
[扩展阅读]探究接收数据的存放位置
第7章 PC端调试开发工具
7.1 启动BToll工具
7.2 创建BToll与蓝牙节点设备的连接
7.2.1 设置节点设备的可发现状态
7.2.2 扫描节点设备
7.2.3 连接参数设置
7.2.4 建立连接
7.3 GATT数据服务
7.3.1 通过UUID读取特性
7.3.2 通过句柄写入特性值
7.3.3 通过句柄读取特性值
7.3.4 通过UUID发现特性
7.3.5 通过句柄读取多个特性值
7.3.6 特性值通知功能
7.4 自定义GATT数据服务
7.4.1 节点设备编程
7.4.2 实例测试
7.5 本章小结
[扩展阅读]GATT数据服务的通知与指示
第8章 蓝牙4.0 BLE无线数据传输分析
8.1 蓝牙4.0 BLE数据包的捕获
8.1.1 构建蓝牙4.0 BLE协议分析仪
8.1.2 蓝牙4.0 BLE数据包的结构
8.2 蓝牙4.0 BLE数据传输实验剖析
8.2.1 实验原理及流程图
8.2.2 节点设备发送的广告数据
8.2.3 节点设备扫描回应的数据
8.2.4 蓝牙4.0 BLE应用数据传输流程分析
8.2.5 数据收发实验回顾
8.3 本章小结
[扩展阅读]蓝牙4.0 BLE协议栈数据包格式
第9章 蓝牙4.0 BLE无线网络技术拓展
9.1 BLE协议栈的中断处理机制
9.1.1 中断处理编程
9.1.2 实例测试
9.2 获取广告设备地址
9.2.1 广告设备编程
9.2.2 集中器设备编程
9.2.3 实例测试
9.3 无线温度采集系统设计
9.3.1 实验原理及流程图
9.3.2 节点设备编程
9.3.3 集中器设备编程
9.4 蓝牙4.0 BLE无线传感器网络组建
9.4.1 集中器与多个节点设备建立连接
9.4.2 实例测试
9.5 本章小结
[扩展阅读]倒F天线设计
参考文献
前言/序言
蓝牙无线技术是使用范围最广泛的全球短距离无线标准之一,全新的蓝牙4.0版本将三种蓝牙技术(即传统蓝牙、高速蓝牙和低功耗蓝牙技术)合而为一。它继承了蓝牙技术在无线连接上的固有优势,同时增加了高速蓝牙和低功耗蓝牙的特点。这三个规格可以组合使用也可以单独使用。蓝牙4.0规范的核心是低功耗技术(Low Energy),即蓝牙4.0BLE。该技术最大特点是拥有超低的运行功耗和待机功耗,蓝牙低功耗设备使用一粒纽扣电池可以连续工作数年之久,可应用于对成本和功耗都有严格要求的无线方案,广泛用于医疗保健、体育健身、家庭娱乐、传感器物联网等众多领域。
大多数读者,在学习新知识的时候很难静下心来去阅读大篇幅的概念性的内容,至少笔者当初在学习的时候就是这种心理,总以为那些话是写给明白人看的,因此为了让读者更轻松、更容易地理解蓝牙技术,本书按照如下主线编写:以蓝牙4.0BLE协议栈为基础,结合智造者科技股份有限公司的CC2540蓝牙4.0BLE多功能开发系统,通过大量实例分析向读者展示了构建一个符合蓝牙4.0BLE协议的无线网络的总体过程,带领读者从实践的角度去掌握蓝牙4.0BLE无线网络构建和开发的基础知识以及编程技巧。
本书的特点
理论与实践相结合。本书以实例为基础,详细阐述了进行蓝牙4.0BLE应用开发所需要的基础知识和编程技巧,同时恰当地摒弃了一些对于初学者而言暂时不用或者很少用到的知识点,目的在于突出学习重点。
讲解简明,步骤详细。每个实例都是以通俗易懂的语言,并穿插图片和表格进行阐述。
模块化设计与系统设计相结合。
本书的编写原则
尽量向读者展示技术细节书中有些地方可能看似很简单,显得有点啰嗦,但是为了给初学者展现出蓝牙4.0BLE无线网络构建的全貌,笔者选择了这种通俗易懂的编写风格,因为笔者在以往的学习过程中遇到很多问题,到技术论坛发帖求助,查阅资料,经过很长时间才解决问题,因此为了向读者展现一个完整的开发过程,宁可啰嗦一点,也不漏掉细节问题。
代码注重的是可读性,没有拘泥于效率和编程规范本书代码力求通俗易懂,并没有过多的考虑程序执行的效率和编程风格。如果读者对基本的编程都没有大概了解的话,又谈何编程规范呢。因此,尽快掌握编程才是硬道理,其他问题可以后续解决。
尽量用朴实的语言去描述看似深奥的理论笔者努力使本书作为一本蓝牙4.0BLE无线网络构建和应用开发的实战手册,想展现出开发过程中的问题及其解决方法,尽量给读者提供一个参考,使读者少走弯路,因此,笔者选择用尽量通俗的语言来叙述,并不想用晦涩难懂的语言来迷惑读者。
虽然蓝牙4.0BLE技术涉及电子、通信、射频等多学科的知识,但是,本书将给读者提供了一个崭新的学习思路,即从应用的角度去学习、理解进而掌握蓝牙无线网络构建的基本原理。
本书内容概述
第1章——简要介绍蓝牙4.0BLE技术的基础知识和应用前景,同时给出智造者科技股份有限公司的CC2540开发板的硬件组成,这也是本书中采用的硬件平台。
第2章——对IAR集成开发环境进行讲解,摒弃部分初学者暂时用不到的功能,突出重点。
第3章——对CC2540开发板硬件资源的设计进行讲解,并介绍如何使用仿真调试下载器进行程序的仿真调试和下载。
第4章——给出一系列基础实验,帮助读者快速掌握CC2540射频单片机硬件资源的使用。
第5章——深入讲解蓝牙4.0BLE协议栈中各层的机制,同时给出一个在协议栈中使用串口进行通信的实验。
第6章——对蓝牙4.0BLE节点设备和集中器设备编程进行详细阐述。
第7章——结合实例详细阐述PC端调试开发工具BToll的使用方法。
第8章——讲述如何搭建蓝牙4.0BLE协议分析仪,并结合协议分析仪捕获的数据对蓝牙无线数据传输流程进行分析。
第9章——结合实例,对蓝牙4.0BLE无线网络中常用的项目开发经验进行阐述。
本书是蓝牙4.0BLE应用开发入门级的读物,阅读完本书后,读者需要结合自己的项目需求,对相应的源代码进行修改来完成应用开发,只有通过不断的练习,才能真正掌握蓝牙4.0BLE无线网络应用开发的技术。
适用对象
·高等院校电子、通信、自动控制等专业学生
·从事蓝牙4.0BLE应用开发的技术人员
·向无线网络开发转型的工程师
编者与致谢
本书由欧阳骏、陈子龙、黄宁淋编著,粟思科审校,参与本书编写工作的人员还有王小强、张凯之、李岩、王治国、钟晓林、王娟、胡静、杨龙、张成林、方明、王波、雷晓、李军华、陈晓云、方鹏、龙帆、刘亚航、凌云鹏、陈龙、曹淑明、徐伟、杨阳、张宇、刘挺、单琳、吴川、李鹏、朱榕、陈思涛和孙浩,另外还要感谢唐鑫、张剑、陈小军、王博、谢德华、童凯、田野、王丹、严林祥为本书编写所提供的帮助。
配套服务
我们为蓝牙读者和用户尽心服务,围绕蓝牙4.0BLE技术、产品和项目市场,探讨应用与发展,发掘热点与重点;开辟了本书的讨论专区并提供技术支持。
由于编者水平有限,加之时间仓促,书中难免有不恰当的地方,恳请广大读者及同行专家批评指正。
编者著
蓝牙4.0BLE开发完全手册:物联网开发技术实战 电子书 下载 mobi epub pdf txt