本文主要是介绍S32K146芯片在编译过程中遇到“section `.bss‘ will not fit in region `m_data‘”的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
S32K146芯片在编译过程中爆出如下错误:
查看ram.ld文件,查看内存分配
看ram.ld文件,结合告警信息,应该是m_data的空间占用超出了分配大小。
代码使用了RTOS,会分配一个总得heap空间,如果该heap空间加上APP代码使用的RAM空间超过总得RAM大小,就会出现heap空间不足的告警。
现在分配的heap空间为:56*512,尝试着将该值减小,改为:20*512,再次编译代码
此时发现代码编译通过,确实是RTOS分配的heap空间加上代码使用的RAM空间超过RAM总得空间。
虽然暂时通过缩减RTOS的heap空间来规避该问题,但是为了系统稳定,更应该保持分配的RTOS的heap空间,想办法优化APP代码使用的RAM空间,从而降低整体代码的RAM空间使用率。
这篇关于S32K146芯片在编译过程中遇到“section `.bss‘ will not fit in region `m_data‘”的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!