色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

單片機的RAM和FLASH認識理解

汽車玩家 ? 來源:HACK實驗室 ? 作者:HACK實驗室 ? 2020-05-03 18:17 ? 次閱讀

最近在一個問答社區回答了一個問題,關于單片機存儲器的,于是有了想專門寫一篇關于單片機存儲器的想法。作為單片機內部一個重要組成部分,存儲器占有很重要的地位,今天就來聊聊我對于單片機的內部存儲器RAM和FLASH的一些認識和理解。

1、先聊聊存儲器

存儲器是單片機結構的重要組成部分,存儲器是用來存儲編譯好的程序代碼和數據的,有了存儲器單片機系統才具有記憶功能。按照存儲介質的特性,可以分“易失性存儲器”和“非易失性存儲器”兩類。易失性存儲器斷電后,里面存儲的內容會丟失;非易失性存儲器斷電后,數據可以依然保持。

單片機的RAM和FLASH認識理解

存儲器分類

2、單片機的存儲器

如下圖所示是STM32F103RB系列單片機所使用的存儲器大小,Flash為128KB,RAM為20KB,這里的RAM是指SRAM。

單片機的RAM和FLASH認識理解

STM32F103RB內存大小

這兩個存儲器的寄存器輸入輸出端口被組織在同一個4GB的虛擬線性地址空間內。可訪問的存儲器空間被分成8個主要塊,每個塊為512MB。Flash用來存儲編譯好的程序文件,SRAM用來存儲運行程序時所創建的臨時數據。所以如果不加入外置存儲器,那么程序里的東西就會出現在這兩個存儲器中。

下圖為STM32F103RB單片機的內存映射圖(部分),可以看到畫紅圈的兩個就是SRAM和Flash存儲器。不知道大家有沒有注意,當使用J-Flash軟件給stm32下載bin文件的時候需要填寫起始地址,那個0x08000000其實就是Flash存儲器的起始地址。

單片機的RAM和FLASH認識理解

STM32F103內存映射圖

3、關于編譯器生成的文件

如果你玩過單片機,那你應該對Keil這款軟件不會感到陌生,下圖是我的那款OLED時鐘的軟件用Keil編譯后的編譯信息

單片機的RAM和FLASH認識理解

KEIL編譯信息

很多人并不一定知道Program Size的含義,我來給大家解釋一下。

Code:是程序中代碼所占字節大小;

RO-data:程序只讀的變量,也就是帶const的,和已初始化的字符串等;

RW-data:已初始化的可讀寫全局/靜態變量;

ZI-data:未初始化的可讀寫全局/靜態變量;

那么這個程序占用的Flash存儲器的空間大小是多少呢?程序所占Flash空間大小=Code+RO data+RW data=生成的bin文件大小。

那么這個程序占用的SRAM存儲器的空間大小是多少呢?程序固定占用RAM大小=RW data+ZI data。

這些信息除了在編譯器下方的信息欄里面看到,也可以在項目文件里的.map文件的最下面找到,如下圖:

單片機的RAM和FLASH認識理解

.map文件信息

4、數據在存儲器上的存儲結構

程序在Flash上的存儲結構如下圖所示,通過閱讀hex文件和MDK下調試綜合提煉出來的。其中,ZI-data對應未初始化數據段,RW-data對應已初始化數據段,Code對應代碼段。

單片機的RAM和FLASH認識理解

STM32的Flash存儲結構

數據在SRAM上的結構,如下圖所示。這部分大家可以參考上面的內存映射圖來理解。

單片機的RAM和FLASH認識理解

STM32的SRAM存儲結構

5、總結

至此我相信大家應該對stm32單片機的內部存儲有了更進一步的認識。其實如果想更深入的了解單片機的運行軌跡,我建議大家來詳細研究一下stm32單片機的上電內存讀取過程,如果搞明白了這塊收獲會是非常大的。后面有機會我也會對這塊進行深入的總結,并整理成文章發出來,與大家一起分享。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6042

    文章

    44617

    瀏覽量

    637534
  • FlaSh
    +關注

    關注

    10

    文章

    1642

    瀏覽量

    148431
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1369

    瀏覽量

    114883
收藏 人收藏

    評論

    相關推薦

    51單片機的主要邏輯功能部件是什么

    部件的操作。它包括算術邏輯單元(ALU),用于執行算術和邏輯運算。 2. 存儲器 程序存儲器(ROM):用于存儲程序代碼,通常是不可更改的內存,如EPROM或閃存。 數據存儲器(RAM):用于存儲運行時數據,比如變量和臨時數據。51單片機的內置
    的頭像 發表于 10-18 12:49 ?534次閱讀

    單片機不工作的原因

    單片機不工作是一個復雜的問題,可能涉及多個方面的因素。以下是對單片機不工作原因的詳細分析,旨在幫助技術人員或愛好者更好地理解和解決這一問題。
    的頭像 發表于 10-17 18:11 ?1589次閱讀

    單片機的中斷機制

    單片機的中斷機制是一種重要的處理方式,它允許單片機在執行主程序的過程中,能夠暫停當前任務,轉而處理外部或內部緊急事件。這種機制極大地提高了系統的響應速度和處理能力,使得單片機在各種應用領域中得到廣泛應用。以下是對
    的頭像 發表于 10-17 18:03 ?925次閱讀

    單片機燒錄程序的線比單片機上的少還能燒錄嗎

    的存儲器通常分為兩類:ROM(只讀存儲器)和RAM(隨機存取存儲器)。ROM用于存儲程序代碼,而RAM用于存儲程序運行過程中的數據。燒錄過程就是將程序代碼寫入ROM中。 單片機燒錄方法 單片機
    的頭像 發表于 09-02 09:54 ?594次閱讀

    提高MSP430G系列單片機Flash擦寫壽命的方法

    電子發燒友網站提供《提高MSP430G系列單片機Flash擦寫壽命的方法.pdf》資料免費下載
    發表于 08-28 11:51 ?0次下載
    提高MSP430G系列<b class='flag-5'>單片機</b>的<b class='flag-5'>Flash</b>擦寫壽命的方法

    單片機boot0和boot1怎么設置

    單片機的啟動模式通常包括從內部ROM啟動、從外部ROM啟動、從外部Flash啟動等。 不同的啟動模式對應不同的Boot0和Boot1設置。 Boot0和Boot1的設置方法 Boot0和Boot1通常通過
    的頭像 發表于 08-22 09:50 ?2959次閱讀

    理解嵌入式和單片機的區別

    從上世紀80年代,由當時的4位、8位單片機,發展到現在的300M的高速單片機。比如經典的51系列單片機,外觀只是一塊一個拇指大小的長方體芯片,共40個引腳,里面包含了邏輯運算單元。實際上也就是一個cpu。
    發表于 05-03 10:30 ?4591次閱讀

    電器設備為何普遍采用單片機

    單芯片單片機是指:將CPU,ROM,RAM,振蕩電路,定時器和串行I/F等集成于一個LSI的微處理器。單芯片單片機的基礎上再配置一些系統的主要外圍電路,而形成的大規模集成電路稱為系統LSI。
    發表于 04-28 15:11 ?481次閱讀
    電器設備為何普遍采用<b class='flag-5'>單片機</b>?

    如何系統、科學地自學單片機

    的自學單片機呢?自學單片機需要一定的計劃和方法,以下是具體的步驟和建議。如何系統、科學地自學單片機?學習電子基礎知識:理解電路原理、數字電子技術、模擬電子技術等基礎
    的頭像 發表于 03-28 08:03 ?1161次閱讀
    如何系統、科學地自學<b class='flag-5'>單片機</b>?

    單片機是什么?單片機編程如何入門?

    單片機其實是一種很早的叫法了,最開始我們的前輩叫單板機或者叫單片機,因為那個時候單片機的處理能力還沒有很強,現在我們所用的基本都是微型處理單元,也叫為控制器也稱之為MCU
    的頭像 發表于 03-28 08:03 ?2122次閱讀
    <b class='flag-5'>單片機</b>是什么?<b class='flag-5'>單片機</b>編程如何入門?

    8-Bit 觸控式 Flash 單片機中文資料

    而又有效的實現方法。 觸摸按鍵功能完全集成于單片機內,使用較少的外部元件便可實現觸摸按鍵的 應用。該系列單片機除了 Flash 程序存儲器,還包括 RAM 數據存儲器和用于存 儲串列數
    發表于 02-28 10:01 ?4次下載

    51單片機流水燈制作

    ?流水燈是學習51單片機的一個基本項目,是我們對單片機IO口輸出認識的基本項目。當然學會了花樣流水燈也很好玩。 下面就分享一種51單片機流水燈制作的方法。 一、流水燈原理圖 二、相關知
    的頭像 發表于 02-26 10:06 ?1690次閱讀
    51<b class='flag-5'>單片機</b>流水燈制作

    什么是單片機及其特性與應用領域

    單片機除具有計算機基本邏輯與數據處理功能之外,還自帶RAM、ROM、I/O口以及定時器等外設,并由芯片制造商提供完備的軟件和硬件開發工具及文檔支持,極大地方便了工程師們的開發工作。此外,單片機在實時光運行過程中,能夠通過程序改變
    發表于 02-15 15:04 ?679次閱讀

    單片機的最小系統由什么組成 單片機的最小系統包括哪些

    單片機(Microcontroller Unit,MCU)的最小系統包括以下幾個主要組成部分: 單片機芯片:單片機是整個最小系統的核心部分,它集成了中央處理器(Central Processing
    的頭像 發表于 02-02 11:27 ?1.1w次閱讀

    單片機RAM不夠用怎么解決?

    來自一位用戶的咨詢,麻煩幫忙解答。越詳細越好,有圖有真相。如有相關的視頻、文檔也可以輔助說明,謝謝。 單片機RAM不夠用怎么辦? 單片機都有RAM,如果我們一下子定義了一大堆的變量,使
    發表于 02-02 07:35
    主站蜘蛛池模板: 挤奶门事件完整照片 | 超碰人热人人热人人看 | 日韩一区二区三区射精 | 青青青草国产 | 做你的爱人BD日本 | 亚洲免费三级电影 | 久久精品国产亚洲AV忘忧草蜜臀 | 性女传奇快播 | 2020年国产精品午夜福利在线观看 | 无码人妻精品一区二区蜜桃色 | 伦理片qvod| 神马影院在线eecss伦理片 | 亚洲精品久久久久无码AV片软件 | ppypp午夜限制不卡影院私人 | 丝袜美女被啪啪不带套漫画 | 在线播放av欧美无码碰 | 一二三四在线观看高清电视剧 | 中文在线日韩亚洲制服 | 一本色道久久综合亚洲AV蜜桃 | FREECHINESE东北女人真爽 free18sex性自拍裸舞 | 欧美人妇无码精品久久 | 性夜影院午夜看片 | 神马电影院午夜神福利在线观看 | 怪物高h粗暴无尽 | 免费人成网站在线观看10分钟 | 暖暖在线观看播放视频 | 成人综合在线视频免费观看完整版 | 2020亚洲国产在线播放在线 | 国产白丝精品爽爽久久久久久蜜臀 | 尤蜜网站在线进入免费 | 哒哒哒影院在线观看免费高清 | 久久亚洲国产精品亚洲 | 老师别揉我胸啊嗯小说 | 午夜一个人在线观看完整版 | 激情内射亚洲一区二区三区 | 亚洲视频在线观看 | 日韩精品AV一区二区三区 | 国产成人高清精品免费5388密 | 曰批国产精品视频免费观看 | 无码专区久久综合久综合字幕 | 国产成人精品免费青青草原app |