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

时间:2013-08-26 12:11:33

标签: arduino

任何人都可以告诉我为什么由于相同的代码,与Mega相比,正确的草图占用更多的RAM。我需要做一个分析。

请帮助我解决问题。

1 个答案:

答案 0 :(得分:4)

这是因为他们有不同的微控制器: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位。