由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(1)
低功耗蓝牙(BluetoothLow Energy),简称BLE。蓝牙低能耗无线技术利用许多智能手段最大限度地降低功耗。
蓝牙低能耗架构共有两种芯片构成:单模芯片和双模芯片。蓝牙单模器件是蓝牙规范中新出现的一种只支持蓝牙低能耗技术的芯片——是专门针对ULP操作优化的技术的一部分。蓝牙单模芯片可以和其它单模芯片及双模芯片通信,此时后者需要使用自身架构中的蓝牙低能耗技术部分进行收发数据。双模芯片也能与标准蓝牙技术及使用传统蓝牙架构的其它双模芯片通信。
TI用于感测应用的蓝牙低功耗装置是真正的 SoC 解决方案。CC254x SoC 系列完美结合 TI 协议堆栈、基本软件 (profile software) 以及样品应用 (sample applicaTIon),是高弹性、低成本单模蓝牙低功耗解决方案。接下来我们将结合CC254x,讲解从环境的搭建到蓝牙4.0协议栈的开发来深入学习蓝牙4.0的开发过程。本教程共分为六部分,主要知识点如下所示:
第一部分知识点:
第一节 BLE开发环境的搭建
第二节 BLE快速体验
第三节 创建IAR工程-点亮LED
第四节 控制LED
第五节 LCD12864显示
第二部分知识点:
第六节 独立按键之查询方式
第七节 独立按键之中断方式
第八节 CC254x内部温度传感器温度采集
第九节 五向按键
第十节 蜂鸣器
第三部分知识点:
第十一节 串口通信
第十二节 Flash的读写
第十三节 BLE协议栈简介
第十四节 OSAL工作原理
第十五节 BLE蓝牙4.0协议栈启动分析
第四部分知识点:
第十六节 协议栈LED实验
第十七节 协议栈LCD显示
第十八节 协议栈UART实验
第十九节 协议栈五向按键
第二十节 协议栈Flash数据存储
第五部分知识点:
第二十一节 DHT11温湿度传感器
第二十二节 蓝牙协议栈之从机通讯
第二十三节 蓝牙协议栈主从一体之主机通讯
第二十四节 OAD空中升级
第二十五节 SBL串口升级
第六部分知识点:
第二十六节 UBL-USB升级
第二十七节 MT-iBeacon基站使用iPhone空中升级
第二十八节 MT-iBeacon基站在PC端实现OAD空中升级
第二十九节 MT-iBeacon基站关于LightBlue软件的使用
第三十节 如何使用MT-USBDongle的透传功能
有关TI 的CC254x芯片介绍,可点击下面链接查看:
主流蓝牙BLE控制芯片详解(1):TI CC2540
BLE是蓝牙4.0规范中的一种,其中master最多有7个外设,低功耗,低延迟,低吞吐量。
六种设备状态
待机状态(standby):设备没有传输和发送数据,并且没有连接到任何设备
广播状态(Advertiser):周期性广播状态
扫描状态(Scanner):主动寻找正在广播的设备
发起链接状态(Initiator):主动向扫描设备发起连接。
主设备(Master):作为主设备连接到其他设备。
从设备(Slave):作为从设备连接到其他设备。
五种工作状态
准备(standby),广播(advertising),监听扫描(Scanning),发起连接(Initiating),已连接(Connected)
四种设备类型
Cnetral主机(常作为client端):如手机,PC
Peripheral从机(常作为Service端):如心率计,血糖计
Observer观察者:
Broadcast广播者:
连接过程:
Peripheral开启广播-->Central扫描从机广播-->Peripheral接收到Central的扫描请求,Peripheral向Central发送扫描回应数据-->Central向Peripheral发起连接-->开始通信。
兼容性
第一节 BLE开发环境的搭建
1.1 硬件准备
要进行BLE的开发,首先我们需要一个硬件环境。
(1) MT254xBoard开发板(最好有两块,方便进行数据收发实验);
(2) USBDongle-BLE抓包工具(多个固件,一个硬件多种用途),协议开发时辅助我们分析数据包;
(3) 开发必备CC-Debug,用于下载和调试程序;
有关本文的工具下载,大家可以到以下这个地址:
朱兆祺ForARM1.2 BLE协议栈的安装
我们使用的是最新版本的协议栈BLE-CC254x-1.4.0,首先在配套的资料文件夹中的tools文件夹下找到BLE-CC254x-1.4.0.exe文件。
我们提供了一个安装包和一个免安装的源码,根据我的开发经验,建议使用安装包安装到C盘,直接使用免安装源码在后期的开发中会遇到一些莫名其妙的问题。下面开始安装协议栈,安装方式很简单,记得选择C盘安装。在安装的最后阶段,默认的会安装Btool。
成功安装了协议栈后,将会出现说明文件。在说明文件中我们可以看到,这个版本的协议栈需要使用IAR for 8051 8.20.2版本的软
- 主流蓝牙BLE控制芯片详解(3):创杰 IS1685S(07-18)
- 苹果光环加持,蓝牙Beacon技术成室内定位应用最大黑马(08-02)
- 主流蓝牙BLE控制芯片详解(4):Nordic nRF51822(07-20)
- 蓝牙BLE之室内定位iBeacon应用测验(08-02)
- 由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(5)(08-02)
- 由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(2)(07-18)