Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
死的路径是 CAN_Deinit ---》 FLEXCAN_DRV_Deinit ---》 OSIF_SemaDestroy(&state->mbs[i].mbSema); ----》 vPortFree 请问是什么问题?
YTM32B1LE05 48MHz, 16KB SRAM MCU based on ARM Cortex-M0+ Core
48pin LQFP
keil开发环境,freertos
在can初始化完成以后5s,调用Can_Deinit函数,中间没有做任何can数据的收发
不用调用OSIF_SemaDestroy(&state->mbs[i].mbSema);这个函数
如上图,这样修改么,但是重新初始化CAN_Init的时候,会调用FLEXCAN_DRV_Init,在FLEXCAN_DRV_Init里面会重新OSIF_SemaCreate(&state->mbs[i].mbSema, 0U); 这样会不会造成内存泄漏? 是不是FLEXCAN_DRV_Init里面OSIF_SemaCreate(&state->mbs[i].mbSema, 0U);也要注释掉,但是没有semaphore会不会有副作用?
可能是RAM不够,Can_Init的时候就是失败的,检测一下Can_Init的返回结果。OSIF_SemaDestroy 要保留
OSIF_SemaDestroy
如上图所示,初始化是可以的
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...