stm32f103zet6介绍、存储器与寄存器分布

时间:2024-04-10 21:29:53

关于STM32F103ZET6单片机

STM32表示内核Cortex-M3,ARMv7构架,主频72M,32bit微控制器。
F表示芯片子系列;
103表示增强型;
Z表示144引脚;
E表示512K字节flash;
T表示LQFP封装方式;
6表示工作温度-40/85度。
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
管脚的具体功能可以参考stm32f103zet6数据参考手册

stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
其中APB1主频小于36MHZ。
stm32f103zet6介绍、存储器与寄存器分布

内容

1.基本外设(四个):
stm32f103zet6介绍、存储器与寄存器分布
2.基本外设接口:
stm32f103zet6介绍、存储器与寄存器分布
3.高级功能:
stm32f103zet6介绍、存储器与寄存器分布
用到的语言是C语言编程。

存储器与寄存器

程序存储器、数据存储器、寄存器、I/O端口在一个4G地址空间内排列。

存储器映射:给存储器分配地址

分成了8个区域,每个512MB
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
最重要的是block0/1/2三个。

block2用于片内外设。包括APB1/ABP2/AHB,以及预留。

AHB如下,高速外设,包括AHB和两个预留区。
stm32f103zet6介绍、存储器与寄存器分布

APB2如下,高速外设。包括APB2和两个预留区
stm32f103zet6介绍、存储器与寄存器分布

APB1如下,低速外设
stm32f103zet6介绍、存储器与寄存器分布

block1 用于设计SRAM,stm32f103zet6的SRAM最大为64kb。
stm32f103zet6介绍、存储器与寄存器分布
block0 用于设计flash,stm32f103zet6的flash最大为512kb。包含flash、预留、系统存储器、选项字节、boot设置
stm32f103zet6介绍、存储器与寄存器分布

寄存器

存储器内部是以四个字节为一个单位,每个单位对应不同的功能,通过控制单元来控制外设。

每个单元对应一个地址,通过访问地址来控制单元。根据每个单元的功能,给每个单元取个名字(寄存器映射)

比如地址为0x4001 1010 的单位为GPIOC_BSRR寄存器,具有GPIOC端口置位/复位功能。

stm32f103zet6介绍、存储器与寄存器分布
GPIO是在挂在APB2总线上的。
stm32f103zet6介绍、存储器与寄存器分布
寄存器地址
stm32f103zet6介绍、存储器与寄存器分布
查看寄存器功能
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布

利用C语言对寄存器进行封装:

stm32f103zet6介绍、存储器与寄存器分布
利用宏定义对寄存器进行定义:
stm32f103zet6介绍、存储器与寄存器分布
用C语言指针操作读写:
stm32f103zet6介绍、存储器与寄存器分布
使用结构体对寄存器进行封装:
stm32f103zet6介绍、存储器与寄存器分布
stm32f103zet6介绍、存储器与寄存器分布