赛普拉斯蓝牙BLE---主机协议栈事件描述
来源:互联网 发布:java垃圾回收机制原理 编辑:程序博客网 时间:2024/04/28 06:50
以下内容纯属个人翻译,有误之处还望指出!
赛普拉斯蓝牙BLE协议栈会产生多种事件,在事件产生的时候会执行用户定义的回调函数,事件类型以参数形式传入。
主要有以下五种事件:
Generic events: 0x01 to 0x1F
GAP events: 0x20 to 0x3F
GATT events: 0x40 to 6F
L2AP events: 0x70 to 0x7F
Future use: 0x80 to 0xFF
下面对各个事件进行描述:
CYBLE_EVT_STACK_ON
这个事件在调用CyBle_StackInit ()函数时产生,该函数初始化并启动BLE协议栈;
BLE stack not busy = CYBLE_STACK_STATE_FREE
CYBLE_EVT_GAPC_SCAN_PROGRESS_RESULT
这个事件在每次发现设备的时候都会被触发;一个指向CYBLE_GAPC_ADV_REPORT_T类型结构体的指针会被当做事件参数返回。
当外设接收到这个事件的时候,它需要调用CyBle_GappAuthReqReply() 函数来响应来自中心设备的认证请求。
当中心设备接收到这个事件的时候,意味着从设备要求中心设备初始化认证流程。中心设备需要调用CyBle_GappAuthReq()这个函数来初始化认证流程。一个指向CYBLE_GAP_AUTH_INFO_T类型结构体的指针作为事件参数返回。
事件参数包含了安全信息,该信息在CYBLE_GAP_AUTH_INFO_T结构体中定义。这个事件在以下三种操作结束时产生:
1、认证由一个最新连接的设备发起;
2、加密由一个已经绑定的设备发起;
3、重加密由一个连接已经加密的设备发起。
在加密或重加密期间,配对时交换的加密信息用于加密或重加密连接。因为这并不修改设备配对需要的认证参数,这个事件没有事件参数和加密操作结果。
外设已停止或启动广播。这个事件在调用CyBle_GappEnterDiscoveryMode 和CyBle_GappExitDiscoveryMode函数之后产生。事件参数是uint8类型的状态值。如果这个值为0x00,表明成功,否则失败。
- evParam[0] = 0x00 -> Encryption OFF
- evParam[0] = 0x01 -> Encryption ON
- Any other value of evParam[0] -> Error
- 赛普拉斯蓝牙BLE---主机协议栈事件描述
- 赛普拉斯蓝牙BLE---Component API Reference
- 蓝牙4.0BLE协议栈
- 蓝牙4.0BLE协议栈
- 蓝牙4.0BLE协议栈
- TI BLE研究---- 蓝牙协议栈(GAP)
- BLE协议栈之蓝牙4.2版本
- 蓝牙解析(part3):BLE协议栈解析
- 蓝牙4.0BLE中协议栈详解
- 低功耗蓝牙BLE协议栈简介
- BLE 协议栈之 主机透传
- ble学习笔记十四---------ble协议栈之按键事件
- <蓝牙BLE>cc2540主机获取数据包
- <蓝牙BLE>cc2540主机读RSSI值
- 更新TI BLE蓝牙协议栈过程BLEv1.2
- 蓝牙4.0/BLE协议栈学习笔记(一)
- 蓝牙4.0BLE协议栈学习笔记(二)
- 第十五节 BLE蓝牙4.0协议栈启动分析
- Facebook和Google如何激发工程师的创造力
- word流程图被固定后无法修改的问题
- Java基础----Character
- 设备驱动-模块参数-ubuntu12.04
- zoj 3626 Treasure Hunt I(树形背包)
- 赛普拉斯蓝牙BLE---主机协议栈事件描述
- biz为空
- Android 异步开发之 AsyncQueryHandler .
- Android中生命周期详解
- http协议学习系列
- C的基本数据类型
- NSXMLParser解析简例
- 好的程序员到底好在哪里?
- 【BZOJ3053】The Closest M Points KDtree 好模板一只【数组版!!!】