07 GPIO,寄存器和引脚关系宏观理解
·
1. GPIO 常见寄存器
不用记忆这些寄存器

2. 引脚、端口和寄存器关系
以 STM32F103ZET6 为例,有 144 个引脚、7 组 GPIO 端口,每个端口 16 个引脚,它们之间的关系是什么样的?

由图片可见,每组端口有 7 个寄存器,每个端口都有一组配套的寄存器。
3. 位、寄存器和引脚关系
把寄存器想象成一排 16 个电灯开关:

- 1 个寄存器 = 16 个 bit(位)
- 1 个 bit = 1 个开关
- 每个开关,控制 1 个引脚

4. 深入理解
上面的寄存器是 16 位,且一个引脚对应一位;但是有的寄存器是 32 位,且一个引脚对应四位。

CRL 是一个 32 位的寄存器,里面每 4 位管 1 个引脚。
32 位 ÷ 4 位 = 8 个引脚
CRL 管 8 个引脚:Px0 ~ Px7


且一组MODE和CNF构成一个套房,一个套房两个空间很合理吧,一个睡觉一个上厕所,也就构成一个引脚,所以CNF和MODE其作用是不同的

这里的 mode0、cnf0 两个 0 表示对应 PA0,说明四位对应一个引脚。

更多推荐


所有评论(0)