瞭解Arduino Uno的記憶體型別


Arduino Uno,或任何其他微控制器,通常具有三種類型的記憶體:

Flash快閃記憶體

  • 這是儲存Arduino程式草圖的地方。

  • 使用PROGMEM或F()宏定義的任何變數也儲存在此處。請注意,此類變數預設情況下是不可變的,即其值在執行時無法更改。

  • Flash快閃記憶體是非易失性儲存器(即,即使電源關閉後,儲存的內容也不會丟失)。

  • 它的訪問速度比SRAM慢,但由於它的尺寸比SRAM大得多,因此可以在這裡儲存一些不可變的字串/陣列以避免SRAM溢位。

  • 它通常具有10,000次讀/寫迴圈。

SRAM靜態隨機存取儲存器

  • 這是建立、儲存和操作程式草圖中普通變數的地方。

  • SRAM是易失性儲存器,即一旦電源關閉,儲存的內容就會丟失。

  • SRAM訪問速度非常快。

  • 它實際上具有無限的讀/寫訪問許可權。

EEPROM電可擦除可程式設計只讀儲存器

  • 與Flash快閃記憶體一樣,EEPROM也是一種非易失性儲存器。

  • EEPROM可用於儲存長期資訊,而不管Flash快閃記憶體中的程式草圖如何(例如,要在不同的程式草圖中使用的某些配置變數)。

  • 在所有三種記憶體型別中,EEPROM的訪問速度最慢。

  • 它通常具有100,000次讀/寫迴圈。

Arduino Uno使用ATmega328P,其規格如下:

  • Flash快閃記憶體 − 32 kb

  • SRAM − 2 kb

  • EEPROM − 1 kb

更新於:2021年7月24日

486 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告