新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 關(guān)于STM32的存儲(chǔ)器“>STM32存儲(chǔ)器 — 關(guān)于STM32的存儲(chǔ)器

關(guān)于STM32的存儲(chǔ)器“>STM32存儲(chǔ)器 — 關(guān)于STM32的存儲(chǔ)器

作者: 時(shí)間:2016-11-28 來源:網(wǎng)絡(luò) 收藏

這就可以去了解STM32的存儲(chǔ)器結(jié)構(gòu),以及為什么這樣設(shè)計(jì)器的結(jié)構(gòu)了。

4 器結(jié)構(gòu)

首先,我們對(duì)比一下Cortex-M3存儲(chǔ)器結(jié)構(gòu)和器結(jié)構(gòu):

圖中可以很清晰的看到,STM32的存儲(chǔ)器結(jié)構(gòu)和Cortex-M3的很相似,不同的是,STM32加入了很多實(shí)際的東西,如:Flash、SRAM等。只有加入了這些東西,才能成為一個(gè)擁有實(shí)際意義的、可以工作的處理芯片——STM32。

STM32的存儲(chǔ)器地址空間被劃分為大小相等的8塊區(qū)域,每塊區(qū)域大小為512MB。

對(duì)STM32存儲(chǔ)器知識(shí)的掌握,實(shí)際上就是對(duì)Flash和SRAM這兩個(gè)區(qū)域知識(shí)的掌握。因此,下面將重點(diǎn)描述Flash和SRAM的知識(shí)。

5 STM32的SRAM

以下是STM32參考手冊(cè)RM0008中的一段原話:

不同類型的STM32單片機(jī)的SRAM大小是不一樣的,但是他們的起始地址都是0x2000 0000,終止地址都是0x2000 0000+其固定的容量大小。

SRAM的理解比較簡(jiǎn)單,其作用是用來存取各種動(dòng)態(tài)的輸入輸出數(shù)據(jù)、中間計(jì)算結(jié)果以及與外部存儲(chǔ)器交換的數(shù)據(jù)和暫存數(shù)據(jù)。設(shè)備斷電后,SRAM中存儲(chǔ)的數(shù)據(jù)就會(huì)丟失。

6 STM32的Flash

STM32的Flash,嚴(yán)格說,應(yīng)該是Flash模塊。

該Flash模塊包括:Flash主存儲(chǔ)區(qū)(Main memory)、Flash信息區(qū)(Information block),以及Flash存儲(chǔ)接口寄存器區(qū)(Flash memory interface)。

三個(gè)組成部分分別在0x0000 0000——0xFFFF FFFF不同的區(qū)域,如圖(小密度的STM32)所示:

圖中完全可以看出Flash模塊中的三個(gè)組成部分在整個(gè)存儲(chǔ)器中的位置。

具體的內(nèi)部區(qū)域的意義及功能請(qǐng)參見編程手冊(cè)PM0042,里面很詳細(xì)。

7 STM32存儲(chǔ)器結(jié)構(gòu)總結(jié)

圖中淡藍(lán)色就是你需要知道的。

Peripherals:外設(shè)的存儲(chǔ)器映射,對(duì)該區(qū)域操作,就是對(duì)相應(yīng)的外設(shè)進(jìn)行操作;

SRAM:運(yùn)行時(shí)臨時(shí)存放代碼的地方;

Flash:存放代碼的地方;

System Memory:STM32出廠時(shí)自帶的你只能使用,不能寫或擦除;

Option Bytes:可以按照用戶的需要進(jìn)行配置(如配置看門狗為硬件實(shí)現(xiàn)還是軟件實(shí)現(xiàn));

今后,你的編寫代碼、程序運(yùn)行、寄存器設(shè)置、ICP、IAP都依靠這些東西。

以上描述的是STM32存儲(chǔ)器的結(jié)構(gòu)相關(guān),其具體存儲(chǔ)器的應(yīng)用在我的下一篇筆記《STM32存儲(chǔ)器知識(shí)的相關(guān)應(yīng)用(IAP和Bit Banding)》中詳細(xì)描述。

至此,關(guān)于《STM32存儲(chǔ)器》知識(shí)已經(jīng)結(jié)束.



上一頁 1 2 下一頁

關(guān)鍵詞: STM32存儲(chǔ)

評(píng)論


技術(shù)專區(qū)

關(guān)閉