調(diào)試許久無法定位問題點,無奈只能求助各位大佬,還望指點
現(xiàn)象是手動斷開后有時有一定概率設(shè)備就無法被連接了,單重啟中心設(shè)備后仍無法連接,單重啟設(shè)備后可以正常連接
再說下結(jié)構(gòu),就是我的CH579是作為從設(shè)備,中心設(shè)備也是一片579實現(xiàn)的,通訊邏輯是這樣的:
中心設(shè)備調(diào)用 GATT_WriteCharValue 向從設(shè)備寫一定量的數(shù)據(jù) (連接后配置MTU為236 ,實際最大通訊包長為208字節(jié))
從設(shè)備收到后執(zhí)行一定操作(用時比較短,十幾毫秒以內(nèi))后,調(diào)用 GATT_Notification 以通知形式向主設(shè)備發(fā)送響應(yīng)數(shù)據(jù)
以上是通訊過程,實際測試時多數(shù)時候能正常工作,但有時斷開連接(我測試的方法是直接斷掉中心設(shè)備電源),這是中心設(shè)備就再也無法連接到從設(shè)備了,此時仍能收到從設(shè)備廣播數(shù)據(jù),但不完整,調(diào)用 GAPRole_CentralEstablishLink 方法返回成功,但是無法收到GAP_LINK_ESTABLISHED_EVENT事件,用手機端軟件同樣可以掃描到從設(shè)備,廣播數(shù)據(jù)不完整,無法連接,
下面放兩種狀態(tài)的廣播數(shù)據(jù)圖
基本就是這樣的現(xiàn)象,無法連接后從設(shè)備其他程序運行正常 請教下這種問題有可能是哪里的問題或者怎么去查找原因呢?