Closed gl-zhongshangwen closed 3 years ago
在做待机测试时出现,CPU占用率异常
任务名 状态 ID 优先级 堆栈 CPU核 CPU使用率
gl_freeStuPrint R 27 10 884 1 75%
gl_ota_task R 23 1 3560 1 t<1%
IDLE0 R 6 0 928 0 13580%
IDLE1 R 7 0 928 1 12509%
led_indicator_t B 13 1 1372 0 2%
Tmr Svc B 8 1 1312 0 3%
gl_mqtt_data_pu B 24 1 1700 1 343%
mqtt_task B 21 5 4224 -1 16%
main B 5 1 1792 0 t<1%
tiT B 14 18 1888 -1 53%
emac_rx S 16 15 3560 -1 t<1%
ipc1 B 3 24 452 1 t<1%
gl_execute_ble_ B 25 2 3316 0 t<1%
gl_execute_mqtt B 26 2 2620 0 t<1%
hciT B 19 22 1480 1 266%
BTU_TASK B 20 20 2984 1 86%
BTC_TASK B 18 19 1108 1 24%
esp_timer B 1 22 3276 0 44%
wifi B 15 23 1052 0 269%
btController B 17 23 2004 1 582%
ipc0 B 2 24 452 0 t<1%
sys_evt B 12 20 916 0 t<1%
任务状态: r-运行 R-就绪 B-阻塞 S-挂起 D-删除
Total free psram memory: 3941.34KB internal ram memory:98.86KB
日志.txt gl_s10_v2_2.zip 这是源码以及重启时的完整日志
@gl-zhongshangwen 不要在扫描结果返回的回调函数里,做任何的耗时操作,打印也尽可能的避免,将受到的数据抛到另外一个 task 中处理,让回调函数尽快返回。
@gl-zhongshangwen 不要在扫描结果的返回函数里,任何持续的操作,也很容易避免,将收到的数据抛到另一个任务中处理,让函数打印功能尽快返回。
嗯,谢谢你的回复,按照你的建议,我将adv数据直接丢入网络数组,然后在另一个任务处理,确实改善了很多,重启少了,以后我将CPU主频由240Mhz降低到160Mhz,重启问题得到了解决。
@gl-zhongshangwen If this issue was fixed, could you please close it?
环境:
数据流向:
BLE扫描接收广播包 》有效数据过滤 》 环形缓冲器 》轮询任务打包数据 》MQTT发布数据 (单包数据在 20KB以内,平均10KB)
问题描述:
BLE 主动广播扫描 和 WIFI STA同时运行时,运行一段时间后出现任务占用率急剧上升,且任务看门狗会复位
工程配置信息:
BLE扫描配置信息:
BLE扫描间隔:
任务占用率对比:
1.正常任务占用率
2.异常任务占用率
触发任务看门狗重启时异常日志: