第二章 STM32微處理器概述_第1頁
第二章 STM32微處理器概述_第2頁
第二章 STM32微處理器概述_第3頁
第二章 STM32微處理器概述_第4頁
第二章 STM32微處理器概述_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、u Cortex-M3 Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)u 處理器的特點處理器的特點第二章第二章 STM32STM32微處理器概述微處理器概述2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)1. Cortex-M31. Cortex-M3系列微處理器的主要特點系列微處理器的主要特點 Thumb-2 Thumb-2 指令集架構(gòu)(指令集架構(gòu)(ISAISA)的子集。)的子集。 哈佛處理器架構(gòu),在加載哈佛處理器架構(gòu),在加載/ /存儲數(shù)據(jù)的存儲數(shù)據(jù)的同時能夠執(zhí)行指令取指。同時能夠執(zhí)行指令取指。 三級流水線。三級流水線。 32 32 位單周期乘法。位單周期乘法。 具備硬件除法。

2、具備硬件除法。 Thumb Thumb 狀態(tài)和調(diào)試狀態(tài)。狀態(tài)和調(diào)試狀態(tài)。 處理模式和線程模式。處理模式和線程模式。2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu) ISR ISR 的低延遲進入和退出。的低延遲進入和退出。 可中斷可中斷- -可繼續(xù)的可繼續(xù)的LDM/STMLDM/STM,PUSH/POPPUSH/POP ARMv6 ARMv6類型類型BE8/LEBE8/LE支持。支持。 ARMv6 ARMv6 非對齊訪問。非對齊訪問。 分支預(yù)測功能分支預(yù)測功能2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)三級流水線及執(zhí)行過程三級流水線及執(zhí)行過程2.1

3、2.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)2.2.基于基于 Cortex-M3Cortex-M3微處理器的結(jié)構(gòu)微處理器的結(jié)構(gòu)ARM Cortex-M3ARM Cortex-M3模塊結(jié)構(gòu)模塊結(jié)構(gòu)ARM Cortex-M3ARM Cortex-M3模塊結(jié)構(gòu)模塊結(jié)構(gòu)2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)3.3.基于基于 Cortex-M3Cortex-M3微處理器的寄存器組微處理器的寄存器組ARM Cortex-M3ARM Cortex-M3處理器內(nèi)存映射處理器內(nèi)存映射2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)4.Co

4、rtex-M34.Cortex-M3的工作模式與狀態(tài)的工作模式與狀態(tài) Cortex-M3Cortex-M3處理器代碼可以是特權(quán)執(zhí)行或非特權(quán)執(zhí)行。處理器代碼可以是特權(quán)執(zhí)行或非特權(quán)執(zhí)行。 線程模式在復(fù)位之后為特權(quán)訪問線程模式在復(fù)位之后為特權(quán)訪問 。 這里需要注意的是,處理模式始終是特權(quán)訪問的。這里需要注意的是,處理模式始終是特權(quán)訪問的。2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)4.Cortex-M34.Cortex-M3的存儲器系統(tǒng)的存儲器系統(tǒng) CM3 CM3的存儲器系統(tǒng)與從傳統(tǒng)的存儲器系統(tǒng)與從傳統(tǒng) ARMARM架構(gòu)的相比,已架構(gòu)的相比,已經(jīng)有過脫胎換骨般的改革了:經(jīng)有

5、過脫胎換骨般的改革了:v CM3CM3的存儲器映射是預(yù)定義的,且規(guī)定好哪個位置的存儲器映射是預(yù)定義的,且規(guī)定好哪個位置使用哪條總線。使用哪條總線。v CM3 CM3存儲器系統(tǒng)支持存儲器系統(tǒng)支持“位綁定位綁定”(bit-band)(bit-band)操作。操作。v CM3 CM3的存儲器系統(tǒng)支持非對齊訪問和互斥訪問。這的存儲器系統(tǒng)支持非對齊訪問和互斥訪問。這兩個特性是直到兩個特性是直到v7Mv7M時才出來的。時才出來的。 v CM3 CM3的存儲器系統(tǒng)支持的存儲器系統(tǒng)支持bothboth小端配置和大端配置。小端配置和大端配置。2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)

6、5.Cortex-M35.Cortex-M3的的NVICNVIC嵌入式中斷控制器嵌入式中斷控制器v 進入中斷方式進入中斷方式 入棧:入棧: 把把8 8個寄存器的值壓入棧。個寄存器的值壓入棧。 取向量:從向量表中找出對應(yīng)的中斷服務(wù)程序入取向量:從向量表中找出對應(yīng)的中斷服務(wù)程序入口地址。口地址。 選擇堆棧指針選擇堆棧指針MSP/PSPMSP/PSP,更新堆棧指針,更新堆棧指針SPSP,更新,更新連接寄存器連接寄存器LRLR,更新程序計數(shù)器,更新程序計數(shù)器PCPC。v 高效的低延遲異常處理高效的低延遲異常處理v NVIC NVIC 的寄存器以存儲器映射的方式來訪問的寄存器以存儲器映射的方式來訪問 使

7、能與除能寄存器使能與除能寄存器 懸起與懸起與“解懸解懸”寄存器寄存器 優(yōu)先級寄存器優(yōu)先級寄存器 活動狀態(tài)寄存器活動狀態(tài)寄存器2.12.1 Cortex-M3Cortex-M3的體系結(jié)構(gòu)的體系結(jié)構(gòu)v 標(biāo)準(zhǔn)標(biāo)準(zhǔn)NVICNVIC包括一個包括一個NMINMI和和3232個通用物理中個通用物理中斷,可配置中斷斷,可配置中斷240240個,優(yōu)先級位個,優(yōu)先級位3 38 8位。位。v 通過與處理器的緊密結(jié)合,加快中斷服務(wù)通過與處理器的緊密結(jié)合,加快中斷服務(wù)程序(程序(ISRISR)的執(zhí)行。)的執(zhí)行。v 通過寄存器硬件堆棧,加上退出和重啟多通過寄存器硬件堆棧,加上退出和重啟多寄存器寄存器Load-StoreL

8、oad-Store操作,可以不用任何匯編操作,可以不用任何匯編代碼完成寄存器數(shù)據(jù)傳送。代碼完成寄存器數(shù)據(jù)傳送。v 采用尾鏈(采用尾鏈(Tail-ChainingTail-Chaining)技術(shù),簡化)技術(shù),簡化激活和掛起的中斷之間的數(shù)據(jù)傳送。激活和掛起的中斷之間的數(shù)據(jù)傳送。v 進入中斷和退出中斷時,處理器狀態(tài)硬件進入中斷和退出中斷時,處理器狀態(tài)硬件自動保存和恢復(fù),無須而外指令消耗自動保存和恢復(fù),無須而外指令消耗。2.22.2 STM32F103xSTM32F103x處理器的特點處理器的特點1.1.內(nèi)核內(nèi)核n ARM 32 ARM 32位的位的Cortex-M3 CPUCortex-M3 CPU

9、n 72MHz 72MHz,高達,高達90DMips90DMips,1.25DMips/MHz1.25DMips/MHzn單周期硬件乘法和除法單周期硬件乘法和除法加快計算加快計算2.2.存儲器存儲器n 從從32K32K字節(jié)至字節(jié)至128K128K字節(jié)閃存程序存儲器字節(jié)閃存程序存儲器n 從從6K6K字節(jié)至字節(jié)至20K20K字節(jié)字節(jié)SRAMSRAM2.22.2 STM32F103xSTM32F103x處理器的特點處理器的特點3. 3. 時鐘、復(fù)位和供電管理時鐘、復(fù)位和供電管理n 2.0 2.0至至3.63.6伏供電和伏供電和I/OI/O管腳管腳n 上電上電/ /斷電復(fù)位斷電復(fù)位(POR/PDR)(

10、POR/PDR)、可編程電壓監(jiān)、可編程電壓監(jiān) 測器測器(PVD)(PVD)、掉電監(jiān)測器、掉電監(jiān)測器n 內(nèi)嵌內(nèi)嵌4 4至至16MHz16MHz高速晶體振蕩器高速晶體振蕩器n 內(nèi)嵌經(jīng)出廠調(diào)校的內(nèi)嵌經(jīng)出廠調(diào)校的8MHz8MHz的的RCRC振蕩器振蕩器n 內(nèi)嵌內(nèi)嵌40kHz40kHz的的RCRC振蕩器振蕩器n 內(nèi)嵌內(nèi)嵌PLLPLL供應(yīng)供應(yīng)CPUCPU時鐘時鐘n 內(nèi)嵌使用外部內(nèi)嵌使用外部32kHz32kHz晶體的晶體的RTCRTC振蕩器振蕩器2.22.2 STM32F103xSTM32F103x處理器的特點處理器的特點4.24.2個個1212位模數(shù)轉(zhuǎn)換器位模數(shù)轉(zhuǎn)換器,1us,1us轉(zhuǎn)換時間轉(zhuǎn)換時間(16

11、(16通道通道) )n 轉(zhuǎn)換范圍是轉(zhuǎn)換范圍是0 0至至3.6V3.6Vn 雙采樣和保持功能雙采樣和保持功能n 溫度傳感器溫度傳感器5.5.低功耗低功耗n 3 3種省電模式:睡眠、停機和待機模式種省電模式:睡眠、停機和待機模式n VBAT VBAT為為RTCRTC和后備寄存器供電調(diào)試模式和后備寄存器供電調(diào)試模式6.DMA6.DMAn 7 7通道通道DMADMA控制器控制器n 支持外設(shè)支持外設(shè): :定時器、定時器、ADCADC、USARTUSART、SPISPI和和I2CI2C2.22.2 STM32F103xSTM32F103x處理器的特點處理器的特點STM32STM32系列的優(yōu)點:系列的優(yōu)點:

12、v 先進的內(nèi)核結(jié)構(gòu)先進的內(nèi)核結(jié)構(gòu)STM32STM32系列使用了系列使用了ARMARM最新的、先進架構(gòu)最新的、先進架構(gòu)Cortex-M3Cortex-M3內(nèi)核內(nèi)核v 優(yōu)秀的功耗控制優(yōu)秀的功耗控制 STM32STM32處理器具有三種低功耗模式處理器具有三種低功耗模式 運行模式時使用高效的動態(tài)耗電機制,在運行模式時使用高效的動態(tài)耗電機制,在FlashFlash中以中以72MHz72MHz全速運行時,如果開啟外部時鐘,處理器僅耗全速運行時,如果開啟外部時鐘,處理器僅耗電電27mA27mA。 待機狀態(tài)時極低耗電,典型值待機狀態(tài)時極低耗電,典型值2uA2uA。 電池供電時,提供低電壓電池供電時,提供低電壓

13、2.02.03.6V3.6V工作能力。工作能力。 靈活的時鐘控制機制靈活的時鐘控制機制, ,用戶可以根據(jù)自己所需的耗電用戶可以根據(jù)自己所需的耗電/ /性能要求進行合理優(yōu)化。性能要求進行合理優(yōu)化。 RTC RTC可獨立供電,外接紐扣電池供電??瑟毩⒐╇?,外接紐扣電池供電。2.22.2 STM32F103xSTM32F103x處理器的特點處理器的特點v 性能出眾而且功能創(chuàng)新的片上外設(shè)性能出眾而且功能創(chuàng)新的片上外設(shè) STM32STM32處理器片上外設(shè)的優(yōu)勢來源于雙處理器片上外設(shè)的優(yōu)勢來源于雙APBAPB總線總線結(jié)構(gòu)。結(jié)構(gòu)。 其中有一個高速其中有一個高速APB,APB,速度可達速度可達CPUCPU的運

14、行頻率的運行頻率, ,連接到該總線上的外設(shè)能以更高的速度運行。連接到該總線上的外設(shè)能以更高的速度運行。 USB: 12Mbit/s USB: 12Mbit/s USART: 4.5Mbit/sUSART: 4.5Mbit/s SPI: 18Mbit/s SPI: 18Mbit/s IIC: 400kHzIIC: 400kHz GPIO:18MHzGPIO:18MHz翻轉(zhuǎn)翻轉(zhuǎn) PWM: PWM:定時器定時器72MHz72MHz輸入輸入 針對針對 MCU MCU 應(yīng)用中最常見的電機控制,應(yīng)用中最常見的電機控制,STM32 STM32 對片上外圍設(shè)備進行一些功能創(chuàng)新。對片上外圍設(shè)備進行一些功能創(chuàng)新。

15、 內(nèi)嵌適合三相無刷電機控制的定時器和內(nèi)嵌適合三相無刷電機控制的定時器和ADCADC2.22.2 STM32F103xSTM32F103x處理器的特點處理器的特點 高級高級PWMPWM定時器提供:定時器提供: 6 6路路PWMPWM輸出輸出 死區(qū)產(chǎn)生死區(qū)產(chǎn)生 編碼器輸入編碼器輸入 霍爾傳感器霍爾傳感器 邊沿對齊和中心對齊波形邊沿對齊和中心對齊波形 完整的向量控制環(huán)完整的向量控制環(huán) 緊急故障停機緊急故障停機, ,與與2 2路路ADCADC同步同步, ,與其它定時與其它定時器同步器同步 可編程防范機制可用于防止對寄存器的非可編程防范機制可用于防止對寄存器的非法寫入法寫入 雙通道雙通道ADCADC采樣

16、采樣/ /保持保持,12,12位位1uS,1uS,連續(xù)連續(xù)/ /獨立獨立模式模式, ,多觸發(fā)源多觸發(fā)源v 易于開發(fā),可使產(chǎn)品快速進入市場易于開發(fā),可使產(chǎn)品快速進入市場2.22.2 STM32F103xSTM32F103x處理器的特點處理器的特點v 高度的集成整合高度的集成整合 STM32 STM32處理器最大程度地實現(xiàn)集成,盡可能處理器最大程度地實現(xiàn)集成,盡可能地減少對外部器件的要求地減少對外部器件的要求 內(nèi)嵌電源監(jiān)控器,帶上電復(fù)位、低電壓檢內(nèi)嵌電源監(jiān)控器,帶上電復(fù)位、低電壓檢測、掉電檢測測、掉電檢測 自帶時鐘的看門狗定時器自帶時鐘的看門狗定時器 一個主晶振一個主晶振(4(416MHz16MH

17、z晶振晶振) )驅(qū)動整個系統(tǒng)驅(qū)動整個系統(tǒng),內(nèi)嵌,內(nèi)嵌PLLPLL產(chǎn)生多種頻率;產(chǎn)生多種頻率;RTCRTC時鐘可內(nèi)部時鐘可內(nèi)部也可外部晶振也可外部晶振(32kHz)(32kHz) 內(nèi)嵌精密內(nèi)嵌精密8MHzRC8MHzRC振蕩電路,可作為主時鐘振蕩電路,可作為主時鐘 LQPF LQPF封裝僅需封裝僅需7 7個濾波電容個濾波電容2.32.3 STM32F103xSTM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)2.3 STM32F103x2.3 STM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)2.3 STM32F103x2.3 STM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)總總線線矩矩陣陣FLASH接口接口2.3 STM32F103x

18、2.3 STM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)v 四個主動單元四個主動單元 M3 M3內(nèi)核的內(nèi)核的ICodeICode總線總線(I-bus)(I-bus)、DCodeDCode總線總線(D-(D-bus)bus)、系統(tǒng)總線、系統(tǒng)總線(S-bus)(S-bus)、DMA(DMA1DMA(DMA1、DMA2DMA2、以、以太網(wǎng)太網(wǎng)DMA)DMA)。v 四個被動單元四個被動單元 內(nèi)部內(nèi)部SRAMSRAM、內(nèi)部閃存、內(nèi)部閃存、FSMCFSMC、AHBAHB到到APBAPB橋。橋。v ICode ICode總線總線 將將M3M3內(nèi)核的指令總線與內(nèi)核的指令總線與FLASHFLASH指令接口相連,指令接口相連

19、,用于指令預(yù)取。用于指令預(yù)取。v DCode DCode總線總線 將將M3M3內(nèi)核的數(shù)據(jù)總線與內(nèi)核的數(shù)據(jù)總線與FLASHFLASH數(shù)據(jù)接口相連,數(shù)據(jù)接口相連,常量加載和調(diào)試。常量加載和調(diào)試。2.3 STM32F103x2.3 STM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)v 系統(tǒng)總線系統(tǒng)總線 將將M3M3內(nèi)核的系統(tǒng)總線與總線矩陣相連,內(nèi)核的系統(tǒng)總線與總線矩陣相連,協(xié)調(diào)內(nèi)核與協(xié)調(diào)內(nèi)核與DMADMA訪問。訪問。v DMA DMA總線總線 將將DMADMA的的AHBAHB主控接口與總線矩陣相連,主控接口與總線矩陣相連,協(xié)調(diào)協(xié)調(diào)CPUCPU的的DCodeDCode和和DMADMA到到SRAMSRAM、閃存、外、

20、閃存、外設(shè)的訪問。設(shè)的訪問。2.3 STM32F103x2.3 STM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)v 總線矩陣總線矩陣協(xié)調(diào)內(nèi)核系統(tǒng)總線和協(xié)調(diào)內(nèi)核系統(tǒng)總線和DMADMA主控總線間的訪主控總線間的訪問仲裁,仲裁采用輪換算法。問仲裁,仲裁采用輪換算法。包含包含DCodeDCode、系統(tǒng)總線、系統(tǒng)總線、DMA1DMA1和和DMA2DMA2總線總線、被動單元。、被動單元。v AHB AHB到到APBAPB橋橋兩個兩個AHB/APBAHB/APB橋在橋在AHBAHB和兩個和兩個APBAPB總線間提總線間提供同步連接。供同步連接。APB1APB1速度限于速度限于36MHz36MHz,APB2APB2全速最

21、高全速最高72MHz72MHz2.3 STM32F103x2.3 STM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)2.3 STM32F103x2.3 STM32F103x內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)2.42.4 STM32F103xSTM32F103x的時鐘結(jié)構(gòu)的時鐘結(jié)構(gòu)2.42.4 STM32F103xSTM32F103x的時鐘結(jié)構(gòu)的時鐘結(jié)構(gòu)2.42.4 STM32F103xSTM32F103x的時鐘結(jié)構(gòu)的時鐘結(jié)構(gòu) 系統(tǒng)復(fù)位后,所有外設(shè)全部關(guān)閉,系統(tǒng)復(fù)位后,所有外設(shè)全部關(guān)閉,但但 SRAM SRAM 和和 FLASHFLASH接口(接口(FLITFFLITF)除外)除外 使用外設(shè)之前需打開該外設(shè)時鐘,使用外設(shè)之前需

22、打開該外設(shè)時鐘,設(shè)置設(shè)置 RCC-AHBENRRCC-AHBENR寄存器寄存器 三種不同的時鐘源可被用來驅(qū)動系三種不同的時鐘源可被用來驅(qū)動系統(tǒng)統(tǒng) 時鐘時鐘(SYSCLK)(SYSCLK): HSIHSI振蕩器時鐘振蕩器時鐘 HSE HSE振蕩器時鐘振蕩器時鐘 PLL PLL時鐘時鐘 2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)存儲組織:存儲組織:u存儲系統(tǒng)采用統(tǒng)一編址方式,小端方式存儲系統(tǒng)采用統(tǒng)一編址方式,小端方式u 4GB 4GB的線性地址空間內(nèi),尋址空間被分成的線性地址空間內(nèi),尋址空間被分成8 8 個主塊個主塊 block0 block0block7block

23、7 每塊每塊512MB512MBu 片內(nèi)片內(nèi)FlashFlash:從:從0 x0000 00000 x0000 0000開始開始u 片內(nèi)片內(nèi)SRAMSRAM: 從從0 x2000 00000 x2000 0000開始開始代碼空間代碼空間數(shù)據(jù)空間數(shù)據(jù)空間位段、位段別名位段、位段別名2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)存儲組織:存儲組織:u 程序存儲器、數(shù)據(jù)存儲器、寄存器和程序存儲器、數(shù)據(jù)存儲器、寄存器和輸入輸出端口被組織在同一輸入輸出端口被組織在同一4GB4GB的線性地的線性地址空間內(nèi),存儲系統(tǒng)采用統(tǒng)一編址方式。址空間內(nèi),存儲系統(tǒng)采用統(tǒng)一編址方式。u 數(shù)據(jù)字

24、節(jié)以小端格式存放在存儲器中數(shù)據(jù)字節(jié)以小端格式存放在存儲器中。一個字的最低地址字節(jié)為該字的最低有。一個字的最低地址字節(jié)為該字的最低有效字節(jié),最高地址字節(jié)是最高有效字節(jié)。效字節(jié),最高地址字節(jié)是最高有效字節(jié)。u 可訪問的存儲器空間被分成可訪問的存儲器空間被分成8 8個主要塊個主要塊,每個塊為,每個塊為512MB512MB。其他所有沒有分配給。其他所有沒有分配給片上存儲器和外設(shè)的存儲器空間都是保留片上存儲器和外設(shè)的存儲器空間都是保留的地址空間。的地址空間。2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)u 4GB4GB的線性地址空間內(nèi),尋址空間被分的線性地址空間內(nèi),尋址空間被

25、分成成8 8個主塊個主塊 block0 block0block7block7 每塊每塊512MB512MBu 片內(nèi)片內(nèi)FlashFlash:從:從0 x0000 00000 x0000 0000開始開始u 片內(nèi)片內(nèi)SRAMSRAM: 從從0 x2000 00000 x2000 0000開始開始 寄存器寄存器 片上外設(shè)片上外設(shè) 代碼空間代碼空間 外部外設(shè)外部外設(shè)數(shù)據(jù)空間數(shù)據(jù)空間 外部存儲器外部存儲器位段、位段別名位段、位段別名2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)CODESRAMPeripherals0 x0000 00000 x2000 00000 x400

26、0 00000 xE010 00000 xFFFF FFFFReservedReservedReservedBit-Band region0 x0800 00000 x0801 FFFF0 x1FFF F0000 x1FFF F7FFFlashSystemMemoryReservedReservedOption Bytes0 x1FFF F8000 x1FFF F80FCortex-M3 internal peripherals0 xE000 00000 xE00F FFFFReserved2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)2.52.5 STM32F10

27、3xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)存儲器映射:存儲器映射:2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)存儲器映射:存儲器映射:如果某款處理器如果某款處理器不帶有某個片上不帶有某個片上外圍,則該地址外圍,則該地址范圍保留。范圍保留。2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)存儲器映射:存儲器映射:2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)存儲器映射:存儲器映射: 如果某款處理器不帶有某個片上外圍,如果某款處理器不帶有某個片上外圍,則該地址范圍保留。則該地址范圍保留。2.52.5 STM32F1

28、03xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)u FLASH FLASHl 由由 Main Block Main Block 和和 Information BlockInformation Block組成組成l Main Block Main Block:存放用戶程序,最高存放用戶程序,最高512KB512KB地址范圍:地址范圍:0 x0800 00000 x0800 00000 x0807 FFFF0 x0807 FFFF小容量:小容量:16K-32K16K-32K,最大,最大4Kx64bit4Kx64bit共共32x1K32x1K頁頁中容量中容量:64K-128K,:64K-128K,最大

29、最大16Kx64bit,16Kx64bit,共共128x1K128x1K頁頁大容量大容量:256K-512K,:256K-512K,最大最大64Kx64bit64Kx64bit共共256x2K256x2K頁頁互聯(lián)型:最大互聯(lián)型:最大32Kx64bit32Kx64bit,共,共128x2K128x2K頁頁l Information Block Information Block: System Memory 2KB:0 x1FFFF000-0 x1FFFF7FF System Memory 2KB:0 x1FFFF000-0 x1FFFF7FF ISP BootloaderISP Bootloa

30、der程序程序 Option Bytes 16B:0 x1FFF F800-0 x1FFFF80F Option Bytes 16B:0 x1FFF F800-0 x1FFFF80F2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)u 特殊區(qū)域特殊區(qū)域FLASHFLASH2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)u SRAM SRAM 最大最大64KB64KB 地址范圍:地址范圍:0 x2000 00000 x2000 00000 x2000 FFFF0 x2000 FFFFu 片上外設(shè)地址映射:片上外設(shè)地址映射:2.52.5 STM32

31、F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)u 位段位段(bit-band)(bit-band)、位段別名、位段別名l 存儲空間中包括兩個位段區(qū),該區(qū)域既可字存儲空間中包括兩個位段區(qū),該區(qū)域既可字操作,又可位操作。操作,又可位操作。 SRAM SRAM最低最低1MB1MB空間空間:0 x20000000:0 x200000000 x200FFFFF0 x200FFFFF 外設(shè)最低外設(shè)最低1MB1MB空間空間:0 x40000000:0 x40

32、0000000 x400FFFFF0 x400FFFFFl 為方便位段區(qū)操作為方便位段區(qū)操作, ,安排兩個安排兩個32M32M位段別名區(qū)位段別名區(qū)l 位段區(qū)中每一位段區(qū)中每一位位映射位段別名區(qū)中的一個映射位段別名區(qū)中的一個字字l 通過對別名區(qū)中某個字的讀寫操作通過對別名區(qū)中某個字的讀寫操作, ,可實現(xiàn)對可實現(xiàn)對位段區(qū)中某一位的讀寫操作。位段區(qū)中某一位的讀寫操作。l 別名區(qū)別名區(qū)2 2個個32MB32MB: SRAM SRAM:0 x2200 00000 x2200 00000 x21FF FFFF0 x21FF FFFF 外設(shè):外設(shè):0 x4200 00000 x4200 00000 x41F

33、F FFFF0 x41FF FFFF2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)u位段位段(bit-band)(bit-band)、位段別名、位段別名l 位段別名區(qū)中的字與位段區(qū)的位映射公式:位段別名區(qū)中的字與位段區(qū)的位映射公式: bit_word_addr = bit_band_base bit_word_addr = bit_band_base +(byte_offset x 32)+bit_number x 4 +(byte_offset x 32)+bit_number x 4 l如如SRAMSRAM位段區(qū)中地址位段區(qū)中地址0 x200003000 x20000300字節(jié)中位字節(jié)中位2 2 被映射到別名區(qū)中的地址為:被映射到別名區(qū)中的地址為:0 x22006008 = 0 x220000000 x22006008 = 0 x22000000 +(0 x300 x 32)+(2 x 4) +(0 x300 x 32)+(2 x 4)2.52.5 STM32F103xSTM32F103x的存儲結(jié)構(gòu)的存儲結(jié)構(gòu)u 對別名區(qū)中某個字進行寫操作:對別名區(qū)中某個字進行寫操作:l 該字的第該字的第0 0位將影響位段區(qū)中對應(yīng)的位位將影響位段區(qū)中對應(yīng)的位u 對別名區(qū)中某個字進行讀操作

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論