MCU程序中变量过多引发内存不足现象


每一款MCU都有固定大小的闪存(存储程序代码)和内存(存储运行阶段产生的变量),以STM32为例,如果设计原理阶段选用的芯片RAM较小,而程序代码中变量分配较多时,可能出现的一个现象就是,单步断点调试的时候,变量值输出都是对的,一旦恢复连续运行,就会有部分量值丢失或者明显异常(连续运行模式下,可通过串口持续吐出的变量数据观发现).

改进方法是:1.改用同引脚的,ram容量大的芯片。2.优化程序代码,压缩非必要的变量,节省ram空间。

总结,程序并不是逻辑对了,语法无误,就一定能得到正确的结果,尤其是这种和芯片关联的下位机程序,必须要考虑硬件的环境和感受,适当的优化是必要的。

点击数: 95   打印  添加到收藏   发布时间: 2021-02-07




上一篇:NFC及其爆破思路
下一篇:USB设备连接异常现象





» 相关内容
  二次曲面参数及flashlight效果
  AHP算法之matlab代码
  LVDS需要注意的几个点
  阴阳与男女之区别
  四象限光电探测器的位置公式
  外触发获取数据实现原理
  自定义USB设备供电不足最终解..
  USB设备连接异常现象
  MCU程序中变量过多引发内存不..
  NFC及其爆破思路
  铁电存储器
  MBR引导记录清除方法
  Sqlite关联版本选择
  Macpro更换NVME硬盘特征
  VBNET跨进程调试VCDLL方法