为什么Arduino DUE使用的草图大小和RAM数量超过Arduino MEGA 2560

  • 本文关键字:Arduino RAM 2560 MEGA DUE arduino
  • 更新时间 :
  • 英文 :


有人能告诉我为什么同一代码的到期草图比Mega占用更多的RAM吗。我需要做一个分析。

请帮助解决我的疑问。

这是因为它们有不同的微控制器:Arduino Mega 2560有一个8位AVR ATMega2560微控制器,Arduino Due有一个32位ARM Cortex-M3微控制器。

RAM

8位体系结构中的变量比32位体系结构的变量小。例如:int在Mega 2560中为2字节长,但在Due中为4字节长。

正因为如此,Due中的程序将比Mega 2560中的程序(以及任何其他基于ATMega的Arduino板,如Uno和Leonardo)使用更多的RAM。

草图大小

原因与RAM类似:在8位AVR架构中,大多数指令都是16位长,而在ARM架构中,大部分指令都是32位长。

最新更新