【问题标题】:program memory usage overflow atmel程序内存使用溢出 atmel
【发布时间】:2017-09-15 10:13:30
【问题描述】:

除了基础知识外,我没有太多编程经验,但我正在编写一系列灯,以便在达到特定时间时打开和关闭。但是我不断收到程序内存使用溢出:

程序内存使用:2066 字节 100.9 % 已满(内存溢出) 数据内存使用:1 个字节 0.8 % Full

谁能指出正确的方向,这意味着什么以及如何处理它?

【问题讨论】:

  • 分享你的代码?

标签: atmelstudio


【解决方案1】:

您必须使用 PROGMEM

#include "avr/pgmspace.h"

const char s[] PROGMEM = { 0,0,0,0,0,0,0,0,0,0,0,0,0};

阅读海量

a=pgm_read_byte(s+1(or 2,0,1,3,4,5...) );

【讨论】:

    【解决方案2】:

    您可以在项目选项中更改代码的优化级别并针对大小进行优化。

    在 Atmel Studio 中选择 Project -> YourProjectName Properties... -> Toolchain -> Optimization -> Optimization Level: Optimize for size (-Os)。

    这应该会减少您的代码占用空间,但是它可能会对时间产生负面影响,但我认为在您的应用程序中微秒并不重要。

    我还没有看到您的代码,但我建议您应该研究一下您的应用程序的设计。对于这样一个简单的任务,可用的程序内存应该是足够的,尤其是在使用不到 1% 的 RAM 时。

    【讨论】:

      猜你喜欢
      • 2016-12-11
      • 2012-06-30
      • 2012-05-12
      • 2011-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多