我正在使用DA14681开发用于BLE外设的固件,并无法让BLE_GAP_DISCONCONNECT功能下工作。固件是USB HID和BLE之间的桥梁,其中设备作为BLE外设工作。
固件上的一个要求是,应该可以断开连接的智能手机应用程序。
当我用当前连接的连接索引调用ble_gap_disconnect函数时,没有任何反应。没有完成断开连接。
怎么会这样?
嗨Ulf Soderberg,
你能看到命令通过嗅探器发送在空中吗?您是否能够获得声明断开过程BLE_EVT_GAP_DISCONCONCECTED或BLE_EVT_GAP_DISCONCONCECT_FAILED的邮件中的一个消息?
谢谢mt_dialog.
我还没有使用过嗅探器。我没有看到由交换机语句捕获的BLE_EVT_GAP_DISCONCONCONCONCONCONCED,并且BLE_EVT_GAP_DISCONCONECT_FAILED事件没有任何情况。我在默认情况下添加了以下行,并通过设置一个断点我可以看到BLE_EVT_GAP_DISCONNECT_FAILED事件到达。
默认:if(hdr-> evt_code == ble_evt_gap_disconnect_failed){fff = 1;//在此代码片段上方定义的变量。在这条线上设置了断点}ble_handle_event_default(HDR);休息;
那么,那是什么BLE_EVT_GAP_DISCONNECT_FAILED?
调试在更多后,我发现问题了。结果,“原因”参数错了。
通过改变ble_gap_disconnect(peer_conn_idx,ble_hci_error_con_term_by_local_host);至ble_gap_disconnect(peer_conn_idx,ble_hci_error_remote_user_term_con);它知道有效。
ble_gap_disconnect(peer_conn_idx,ble_hci_error_con_term_by_local_host);
ble_gap_disconnect(peer_conn_idx,ble_hci_error_remote_user_term_con);
谢谢你的迹象。
最好的问候mt_dialog.
嗨Ulf Soderberg,
你能看到命令通过嗅探器发送在空中吗?您是否能够获得声明断开过程BLE_EVT_GAP_DISCONCONCECTED或BLE_EVT_GAP_DISCONCONCECT_FAILED的邮件中的一个消息?
谢谢mt_dialog.
我还没有使用过嗅探器。
我没有看到由交换机语句捕获的BLE_EVT_GAP_DISCONCONCONCONCONCONCED,并且BLE_EVT_GAP_DISCONCONECT_FAILED事件没有任何情况。
我在默认情况下添加了以下行,并通过设置一个断点我可以看到BLE_EVT_GAP_DISCONNECT_FAILED事件到达。
默认:
if(hdr-> evt_code == ble_evt_gap_disconnect_failed){
fff = 1;//在此代码片段上方定义的变量。在这条线上设置了断点
}
ble_handle_event_default(HDR);
休息;
那么,那是什么BLE_EVT_GAP_DISCONNECT_FAILED?
调试在更多后,我发现问题了。结果,“原因”参数错了。
通过改变
ble_gap_disconnect(peer_conn_idx,ble_hci_error_con_term_by_local_host);
至
ble_gap_disconnect(peer_conn_idx,ble_hci_error_remote_user_term_con);
它知道有效。
嗨Ulf Soderberg,
谢谢你的迹象。
最好的问候mt_dialog.