Questions tagged «sram»


5
我使用了太多的RAM。如何测量?
我想知道我在项目中使用了多少RAM,据我所知,没有办法真正解决这个问题(除了自己进行计算之外)。我进入了一个相当大的项目的阶段,在此我已经确定我的RAM用完了。 我已经确定了这一点,因为我可以添加一个节,然后在代码中的其他地方毫无理由地打破所有地狱。如果我有#ifndef其他问题,它将再次起作用。新代码在程序上没有任何问题。 我怀疑有一段时间我将要用完可用的RAM。我不认为我使用了太多堆栈(尽管有可能),确定我实际使用多少RAM的最佳方法是什么? 经历并尝试解决它,当我遇到枚举和结构时会遇到问题;它们需要多少内存? 第一次编辑:另外,自开始以来,我已经对草图进行了很多编辑,这些并不是我最初得到的实际结果,但是它们是我现在所得到的。 text data bss dec hex filename 17554 844 449 18847 499f HA15_20140317w.cpp.elf 16316 694 409 17419 440b HA15_20140317w.cpp.elf 17346 790 426 18562 4882 HA15_20140317w.cpp.elf 经过大量编辑后,第一行(带有文本17554)不起作用,第二行(带有文本16316)正在正常工作。 编辑:第三行可以正常工作,进行串行读取,执行新功能等。实际上,我删除了一些全局变量和重复的代码。我之所以这样说是因为(怀疑)这与每个sae的代码无关,而必须与RAM的使用有关。这使我回到了最初的问题,“如何最好地衡量它”,我仍在检查一些答案,谢谢。 我实际上如何解释以上信息? 到目前为止,我的理解是: `TEXT` is program instruction memory `DATA` is variables (unitialised?) in program memory `BSS` is variables occupying RAM …
19 sram 


5
堆栈存储器如何用于功能和局部变量?
我想将一些值保存到EEPROM,还希望通过避免一些变量声明来释放SRAM,但是EEPROM存储器是按字节分配的。 如果要存储一个int值,则必须重复使用一些表达式。我以为我会为它们做一些功能。但是我担心,如果创建一个函数,它仍然会占用SRAM内存,最好声明一个int变量而不是使用EEPROM。 函数和局部变量如何存储在SRAM中?它是否仅存储闪存中功能指针的地址,还是所有变量和命令都存储在堆栈中?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.