【【萌新的STM32学习-12】】

萌新的STM32学习-12

GPIO八种模式
1输入浮空
输入用,完全浮空,状态不定
在这里插入图片描述
2输入上拉
输入用,用内部上拉,默认是高电平
在这里插入图片描述
3输入下拉
输入用,用内部下拉,默认是低电平
在这里插入图片描述
4模拟功能
ADC DAC
在这里插入图片描述
5开漏输出
软件IIC的SDL,SCL等
开漏模式下的PMOS并不会导通 始终处于高阻状态
必须在最后接入外部上拉 才能输出高电平
在这里插入图片描述
6推挽输出
驱动能力强,25mA (max) 通用输出
在这里插入图片描述
7开漏式复用功能
片上外设功能(硬件IIC的SDL,SCL引脚等)
必须接入一个外部上拉才能输出高电平
在这里插入图片描述
8.推挽式复用功能
片上外设功能(SPI的SCK,MISO,MOSI引脚等)
在这里插入图片描述
在这里插入图片描述
F1在输出模式下,禁止使用内部上下拉

STM32F1 每组(这里是 A~D)通用 GPIO 口有 7 个 32 位寄存器控制,包括 :
2 个 32 位端口配置寄存器(CRL 和 CRH)
2 个 32 位端口数据寄存器(IDR 和 ODR)
1 个 32 位端口置位/复位寄存器(BSRR)
1 个 16 位端口复位寄存器(BRR)
1 个 32 位端口锁定寄存器 (LCKR)
这个意思就是我GPIOA有对应的7个寄存器 接下来GPIOB也有七个对应的寄存器 就是这种意思

对于F1 芯片来说
CRL CRH 配置工作模式,输出速度
IDR  输入数据
ODR 输出数据
BSRR 设置ODR寄存器的值
BRR F4之后没有这个寄存器,考虑代码的兼容性不建议使用
LCKR 配置锁定,用的不多
所以学习F1一般来说只要配置前面这五个寄存器即可
端口配置寄存器(GPIOx_CRL 和 GPIOx_CRH)
这两个寄存器都是 GPIO 口配置寄存器,不过 CRL 控制端口的低八位,CRH 控制端口的
高八位。寄存器的作用是控制 GPIO 口的工作模式和工作速度
在这里插入图片描述
在这里插入图片描述
他的意思是这样的 
从外部来看我们有很多个GPIO 分为ABCDEF等等
每个GPIO都有16个引脚 每个引脚的名字是PA0到PA15
这是外部的看法
对于内部 引脚自然会有引脚的功能传入的模式 状态 频率 等 那么我们就用剩下的内部的七个寄存器来搞定各个引脚的功能
第一个寄存器32位的分为CRL和CRH 各控制了PA0带PA7 或者是PA8 到PA15
因为我们工作模式多 所以设置了每4位来确定一个引脚的工作模式和速度 16x4=64 所以就需要2个32位的寄存器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值