stm32學習
八.stm32基礎
2.stm32內核和芯片

F1系統架構:4個主動單元和4個被動單元

AHB是內核高性能總線,APB是外圍總線
總線矩陣將總線和各個主動被動單元連到一起
ICode總線直接連接Flash接口,不需要經過總線矩陣
AHB:72MHz,APB1:36MHz,APB2:72MHz
F4系統架構:8個主動單元和7個被動單元

架構圖(F407為例)

F7系統架構:12個總線主控器+8個總線從控制器

結構圖:

DTCM RAM:即可存放數據,也可存放指令
ITCM RAM:支持CPU時鐘速度訪問,0個等待周期
AHB1/2:216MHz
APB1:54MHz
APB2:108MHz
H7系統架構圖:

有3個總線矩陣,矩陣之間有獨立的通信通道,信號只能從主接口發送到從接口
ITCM:存放程序
DTCM:存放數據
AHB1/2/3/4:240MHz
APB1/2/3/4:120MHz
3.存儲器映射
ST將4GB(2^32)地址空間分成8個塊:

Block0(FLASH)功能劃分:

Block1(SRAM)功能劃分:

Block2(外設)功能劃分:

4.寄存器映射
寄存器映射小技巧:

因為結構體內的變量的地址是連續的,所以可以快速的定義變量的地址
文件stm32f103xe.h是用來宏定義各種變量的,主要包括中斷編號、外設寄存器結構體類型、寄存器映射、寄存器位定義、外設判定
九.HAL庫
1.介紹
官網可下載各種型號的cube文件(HAL庫)
CMSIS:微控制器軟件接口標準,由ARM和芯片廠商等共同制定
Cube固件包文件夾簡介:

重要的只有Drivers、Middlewares和Projects
Drivers、Middlewares文件夾介紹:

Drivers文件夾中的CMSIS文件夾中的關鍵文件:

Drivers文件夾中的CMSIS文件夾中的所有文件:

Device和Include文件夾的關鍵文件介紹:
