方法ble_gattc_indicate_custom尾部 ble_gattc_process_status 釋放了,或者說是修改了狀態
我曾經碰到過的是wm_ble_uart_if.c 中RING_BUFFER_SIZE 太小,導致不能全部發送
wm_bt_util.c
你可以在wm_ble_server_api_demo.c中ble_server_indication_sent_cb,加上幾句代碼,驗證是否存在環形buff緩沖區小了的問題。
個人認為能解決辦法有幾個:
1、適當增加環形buffer的長度(最簡單,前提ram足夠,數據包長度足夠單一、固定)
2、自己分包發送,收到返回,再發送下一包。(一問一答,穩健,但速度慢)
3、實現demo 的 event並注冊,發送成功後,寫入下一包。(未驗證)
看沒人回複,我提供下自己的思路,希望對你有幫助
只跑示例代碼,設置mtu,是能超過23字節的。
沒碰到過,mtu我設置的是256,還用做了ota升級
代碼沒看出啥問題,唯一跟示例有區別的是 rev_data, rev_data 緩沖區大小對嗎?只打印長度試試?
問 ubuntu 下如何下載程序到開發板