了解 Arduino Uno 中的内存类型
ArduinoUno或任何其他与此相关的微控制器,通常具有3种类型的内存-
闪存(Flash)
这是存储Arduino草图的地方。
使用PROGMEM或F()宏定义的任何变量也存储在此处。请注意,默认情况下此类变量是不可变的,即它们的值不能在运行时更改。
闪存是非易失性的(即,即使断电,存储的内容也不会丢失)
访问速度比SRAM慢,但由于它的大小比SRAM大得多,因此可以在此处存储一些不可变的字符串/数组,以避免SRAM溢出。
它通常有10,000个读/写周期。
静态随机存取存储器
这是创建、存储和操作草图的法线变量的地方。
SRAM是易失性的,即一旦断电,存储的内容就会丢失
SRAM访问速度非常快。
它实际上具有无限的读/写访问权限。
电可擦可编程只读存储器
与闪存一样,EEPROM也是一种非易失性存储器。
EEPROM可用于存储长期信息,而与Flash中的草图无关(例如一些跨草图使用的配置变量)
在所有三种存储器类型中,EEPROM的访问速度最慢。
它一般有100,000个读/写周期
ArduinoUno具有ATmega328P,具有以下规格-
Flash-32kb
SRAM-2kb
EEPROM-1kb