ch582m蓝牙扫描广播问题

我在使用ch582m做蓝牙通信时遇到一个问题, 设备需要用到蓝牙广播和扫描广播的功能,开始发现设备和app连接之后就不能扫描广播了,会一直触发GAP_DEVICE_DISCOVERY_EVENT事件,并且调用GAPRole_CentralStartDiscovery函数开始扫描也没成功,返回值一直是0x0c;后来对比蓝牙主从一体的例程发现配置不一样,我的工程BLE_MEMHEAP_SIZE分配的大小只有6k而例程分配了10k,我将这个大小改到10k后就能正常跑了;但是分配10k后我的项目工程ram就占用了95%已上了,后续开发资源可能不够了,想问一下这个大小是必须要用到这么多吗,我改到8k试了一下 也不行; 还有其他办法可以进行优化吗:

image.png

蓝牙做多连接的时候需要将RAM的分配扩大,否则留给协议栈的缓存不够用,可能导致蓝牙功能异常。

针对这种情况,建议是将协议栈分配大一些,或者单次连接数量降低。

如果开启了MTU功能,则将mtu降低。


只有登录才能回复,可以选择微信账号登录