第一章-初识STM32
第一章-初识STM32
为巽一、芯片里面有什么
1.片上外设
内核之外的部件叫核外外设或片上外设。GPIO,USART、I2C、SPI 都叫做片上外设。
芯片内核和外设之间,有总线连接,主控总线有 8 条,被控总线有 7 条。
2、寄存器映射
给存储器分配地址的过程称为存储器映射。如果是给吹气球再分配一个地址叫存储器重映射。
3、存储器区域功能划分
(1)BLock0 功能划分
(2)Block1 功能划分
(3)Block2 功能划分
二、寄存器
以功能为名给这个内存单位取一个别名,这个别名就是我们经常说的寄存器,分配好地址的特定功能的内存单元取别名的过程叫做寄存器映射
如何理解寄存器
1、名称 (GPIOx_BSRR)(x=A…I)
该寄存器名为(GPIOx_BSRR)(x=A…I),其中 x 可以为 A-I,适用于 GPIOA、GPIOB 到 GPIOU
2、偏移地址,寄存器相对这个外设的基地址的编译
寄存器的编译地址是 0x18,可以查到 GPIOA 外设的基地址是 0x4002 0000,GPIOx_BSRR 寄存器地址为,0x4002 0000+0x18
3、寄存器位表
0-31 的名称以及权限。最上方是位编号,中间位名称,最下方是读写权限,w 只写,r 只读,rw 可读写
4、位功能说明
BRy 及 BSy,其中的 y 数值可以是 0-15,这里的 0-15 表示端口的引脚号, 如 BR0、BS0 用于控制 GPIOx 的第 0 个引脚,若 x 表示 GPIOA,那就是控制 GPIOA 的第 0 引脚, 而 BR1、BS1 就是控制 GPIOA 第 1 个引脚。
其中,“复位”是将该位设置为 0 的意思,而“置位”表示将该位设置为 1;如果对 BR0 写入“
1”的话,那么 GPIOx 的第 0 个引脚就会输出“低电平”,但是对
BR0 写入“0”的话,却不会影响 ODR0 位,所以引脚电平不会改变。要想该引脚输出“高电平”, 就需要对“BS0”位写入“1”,寄存器位 BSy 与 BRy 是相反的操作
三、C 语言对寄存器的封装
总线基地址和外设基地址都以相应的宏定义起来,总线或者外设都以他们的名字作为宏名
四、STM32 分类
五、STM32 命名方法
以 STM32F407ZGT6 来讲解
家族:32bit 的 MCU
产品类型:F 表示基础型
引脚数:Z 表示 144pin,C 为 48,R 为 64,V 为 100,Z 为 144,B 为 208,N216
FLASH:G 表示 1024KB,C 表示 256,E 表示 512,I 表示 2048
封装:T 表示 QFP 封装最常用的封装
温度:6 表示等级为 A:-40~85°