马上注册,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册 
×
大家好
我将properties : [ notify, write, write_cmd], 同时有write 和write_cmd 两种属性,
向应用层转发的时候 使用ATT_ACCESS_WRITE、ATT_ACCESS_READ来区分是读操作 还是写操作, 那请问如何区分write、write_cmd呢?
write时的代码如下:
- else if (access_ind->flags & ATT_ACCESS_WRITE)
- {
- if (access_ind->size_value <= GATT_CLIENT_CONFIG_NUM_OCTETS)
- {
- /* On a Write, send new client config value to the app */
- MAKE_HR_SERVER_MESSAGE(GATT_PTT_SERVER_WRITE_CLIENT_CONFIG_IND);
- message->ptt_sensor = ptt_sensor;
- message->cid = access_ind->cid;
- message->config_len = access_ind->size_value;
- /*message->config_value = (access_ind->value[0] & 0xFF) | ((access_ind->value[1] << 8) & 0xFF00);*/
- for(i = 0;i < 20;i++)
- {
- message->config_value = access_ind->value;
- }
- MessageSend(ptt_sensor->app_task, GATT_PTT_SERVER_WRITE_CLIENT_CONFIG_IND, message);
- /* Library response to the access request */
- sendPTTServerAccessRsp(&ptt_sensor->lib_task, access_ind->cid, HANDLE_PTT_MEASUREMENT_CLIENT_CONFIG, gatt_status_success, 0, NULL);/*gatt_status_request_not_supported*/
- sendPTTServerAccessRsp(&ptt_sensor->lib_task, access_ind->cid, HANDLE_PTT_MEASUREMENT, gatt_status_success, 0, NULL);
- /*sendPTTServerAccessRsp(&ptt_sensor->lib_task, access_ind->cid, HANDLE_PTT_MEASUREMENT_CLIENT_CONFIG, gatt_status_request_not_supported, 0, NULL);*/
- /*sendPTTServerAccessRsp(&ptt_sensor->lib_task, access_ind->cid, HANDLE_PTT_MEASUREMENT, gatt_status_request_not_supported, 0, NULL);*/
- }
- else
- {
- sendPTTServerAccessErrorRsp(ptt_sensor, access_ind, gatt_status_invalid_length);
- }
- }
复制代码
谢谢大家
|