低功耗蓝牙的基础
来源:互联网 发布:鳄鱼毒品知乎 编辑:程序博客网 时间:2024/05/01 19:45
本文译至:http://blog.fenrir-inc.com/jp/2013/09/bluetooth-le-firststep.html
翻译说明:因为该连载主要是关于设备上应用开发的,这个不是很感兴趣,所以仅仅翻译了最开始的这部分。
您好,我是共同开发部的开发负责人伊藤。
- 第1回 低功耗蓝牙基础
- 第2回 iOS设备上使用Bluetooth LE设备
- 第3回 把iOS设备作为Bluetooth LE设备
- 第4回 在Windows 8.1 Windows 应用商店上使用 BLE
关于低功耗蓝牙
Bluetooth Low Energy (也被称为Bluetooth 4.0、BLE、BTLE),下面记作BLE,是使用2.4GHz的无线短距离无线通信标准。 迄今为止,虽然高速蓝牙已经实现,但BLE在通讯速度上比较普通,主要强调一个纽扣电池能够工作几年的这种省电性能。
设备端和主机端使用GATT(Generic ATTribute) profile进行通信。 如果你听到GATT这个名词,就可以将其想成使用BLE,这没什么问题。
由于与传统蓝牙不兼容,在主机端,和蓝牙3.0合并做为双模,实现成两者都可以使用的情况比较多。在PC机和智能手机上,使用双模的被称作「Bluetooth Smart Ready」,只支持低功耗蓝牙的被表示成「Bluetooth Smart」。
顺便说一句,最早诺基亚在2006年制定了名为Wibree的技术标准,但它已在2010年被标准化为蓝牙4.0。
GATT profile
GATT已经成为BLE的通信的通信规定,设备中存在多个“服务”,“服务”中还存在多个“characteristic”。
实际的数据交换,通过读取和写入“characteristic”进行。 对使用面向对象程序设计的人来说,这可以很容易理解成“服务”是类,“characteristic”视为属性。
每个characteristic的值可以在不加密的状态下读写,但配对的操作是加密的。 还有当characteristic的值已改变时,可接收通知(notify)。
除了那些蓝牙技术联盟定义为标准的服务和characteristic之外,设备的开发者也可以自己定义。
一些必要的服务组合成所谓的“profile”。(特别是在需要和传统蓝牙区别开的情况下的情况下,称为基于GATT的profile)蓝牙技术联盟也定义了标准的profile,例如,对应于鼠标键盘“HID over GATT“ profile,是定义成包括「Human Interface Device」「Device Information」「Battery Service」「Scan Parameters(可选)」这些服务的。
服务和characteristic是通过UUID来进行识别的。UUID是32位的,但那些被蓝牙技术联盟的标准中定义的UUID是以四个数字来表示的。实际上,四位数的UUID,是有附加 Bluetooth Base UUID,即变成0000●●●●-0000-1000-8000-00805f9b34fb(4位UUID被输入在●的位置)。如果你想定义自己的非标准UUID,可以使用如Mac的uuidgen命令生成。
- 低功耗蓝牙的基础
- 蓝牙4.0,低功耗的秘密
- 【蓝牙低功耗BLE】按键的使用
- TI的BLE低功耗蓝牙介绍
- 转的 蓝牙设计 低功耗
- 低功耗蓝牙ibeacon的初级应用
- 低功耗蓝牙的连接过程
- android 低功耗蓝牙BLE的春天
- Android 上的低功耗蓝牙实践
- TI_ble低功耗蓝牙
- 蓝牙设计 低功耗
- 蓝牙低功耗安全性
- 低功耗蓝牙BLE
- 蓝牙低功耗入门
- 蓝牙低功耗(BLE)
- 低功耗蓝牙学习
- 低功耗蓝牙简述
- 蓝牙低功耗(BLE)
- 链表的基本操作
- 数据结构之双链表的基本操作
- linux系统下安装samba,和简单网络配置 .
- LabVIEW上位机与串口通信
- 各种排序算法时间复杂度
- 低功耗蓝牙的基础
- Source Insight 3.X utf8支持插件
- cookie相关
- Partition List
- Qt应用程序自动重启
- java.lang.NoClassDefFoundError: Could not initialize class com.zzxgy.struts.model.HibernateUtil
- 一个朋友给他们公司软件产品写的使用说明。。。我惊呆了。。
- pojo与DTO的区别
- CentOS配置smaba与Windows共享文件