连续签到天数:4天 | 签到总天数:179天 | 签到总奖励:3931金币 |
|
马上注册,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册 
×
本帖最后由 smagi 于 2018-2-25 10:51 编辑
实现按键通知的步骤如下,
1. 搭建一个普通的GATT server, 如果没有完成这一步,请先学习 GATT Users Guide以及相关的blog.
2. 修改server GATT db接口文件 xx_server.dbi
2.1 修改characteristic 属性
properties : [ read, notify ],
2.2 增加 client_config 字段
client_config {
name : "XXX_CLIENT_CONFIG",
flags : [ FLAG_IRQ ]
}
3. 编写 clientConfigAccess 函数, 参考已有的服务程序
对ATT_ACCESS_WRITE的处理中需要记录 access_ind->cid以及 access_ind->value
4. 按键处理,编写发送通知的函数
4.1 检查记录的 cid 以及 client_config 值,确定此连接需要接受通知
4.2 发送通知,调用
GattNotificationRequest(gattManagerDataGetTask(), cid, HANDLE_XXX, 1, &skPressed);
此处 HANDLE_XXX需要使用 sink_gatt_db.h中的定义,uint8 skPressed 记录按键值。
手机应用修改就不说了。记得修改dbi之后修改设备地址或者重启手机以涮新记录。
|
|