使用本站提供的SDK,WM-W800-SDK-202207-V1.00.08這套SDK,然後打開W800_SDK/W800_SDK.cdkproj工程(使用NIMBLE協議棧的工程),編譯後生成fls固件,燒錄到W801,通過串口輸入t-bt-on()回車發送,顯示內容如下:
[WM_I] <0:00:03.988> bt system running, uart_no=255, log_level=6
CAUTION::CONTROLLER ALLOC MEMFAILED
assertion "0" failed: file "wmip.c", line 307, function: wmip_init
這個wmip.c文件不存在,感覺是在libbtcontroller.a靜態庫裡面的。反正說內存報錯。還有這個固件,居然使用malloc,free。
我以前都沒注意到這個問題,今天想再玩玩NIMBLE協議棧,發現就不行了。用原來那個SDK(wm_sdk_w80x_20211115.zip),編譯工程,燒錄又是好好的。 這咋整?官方,能用點心,做了測試才發出來嗎?
在做測試前,需要把demo/wm_demo.h文件裡所有模塊都配置為DEMO_ON,DEMO_CONSOLE也設置為DEMO_ON。煩請以後發新SDK時,都拿板子測試過沒問題再發。現在我要用回來的SDK來學NIMBLE協議棧了。早知道我就用ESP32了。真晦氣。