嗨对话框
我想要发出一个请求来更新外围角色设备中的连接参数。
请参考文档(UM_BLE_GAP_IS.pdf)。我发现这条信息来提出请求:
GAPC_PARAM_UPDATE_CMD
我确实喜欢下面的内容:
struct gapc_param_update_cmd *req = KE_MSG_ALLOC(gapc_param_update_cmd,
TASK_GAPC TASK_APP,
gapc_param_update_cmd);
申请- >操作= GAPC_UPDATE_PARAMS;
申请- > params.intv_min = ?
申请- > params.intv_max = ?
申请- >参数。延迟= ?
申请- >超时= ?
ke_msg_sent(要求的);
现在的问题是参数的单位是什么?
我希望连接间隔为100ms,超时时间为5s。
谢谢你!

这些单位如下:
intv_min / intv_max: 1.25 ms
超时:10毫秒
因此,要将连接间隔设置为100ms,您应该写入80,而将超时设置为5s,则写入500。
好的。
谢谢你,joacimwe。
嗨Joacimwe
现在我可以发出更新连接参数的请求,它工作了。谢谢你的帮助。
但我还有一个问题:
在文档(RW_BLE_GAP_IS.pdf)的5.5.1章中提到,应用程序任务可以接收如下两条消息:
GAPC_PARAM_UPDATED_IND:更新连接参数时触发事件。
GAPC_CMP_EVT:当操作完成。
现在我可以在发出请求后收到第二条消息。但我收不到第一条信息。有什么问题。
注意:我在app_default_state[]中添加了一个函数,如下所示:
(ke_msg_func_t) app_update_param_ind_handler}, {GAPC_PARAM_UPDATE_REQ_IND
并定义了函数:
ke_msg_id_t const msgid,
Struct gapc_param_update_req_ind const *param,
ke_task_id_t const dest_id,
ke_task_id_t const src_id)
{
App_sample128_set_value (0,param->params.intv_min);//看起来它没有进入这里
app_sample128_set_value(1,参数- > params.intv_max);
返回(KE_MSG_CONSUMED);
}
但它就是不起作用。你能给我一些帮助吗?
谢谢。