如何检查应用程序的 cortex m3 的 SRAM 使用情况

How to check SRAM usage for cortex m3 for an application

对于 Cortex-M3,如何检查其上的嵌入式应用程序 运行 的最大 SRAM 使用率。我们应该检查 IAR 生成的链接器映射文件和堆栈使用情况,还是应该尝试编写一个函数来检查当前 SRAM 并在运行时在应用程序的不同位置调用它。应该用哪种方法。

不容易,因为堆栈的使用差异很大,并且在编译时无法知道,除非您有一些限制(例如没有适当的递归)。

也就是说,有一些工具可以帮助您获得 worst-case 堆栈使用率:

(在 Rust 中也有关于这个主题的一些发展:https://blog.japaric.io/stack-analysis/