stm32探索版学习随笔(三)——GPIO资源,工作模式,寄存器

详见【正点原子】 手把手教你学STM32 系列视频之 STM32F4-基于探索者F407

管脚查询

GPIO可以通过ST官方的数据手册《STM32F4ZGT6.pdf》p46页开始获得每一个管脚的详细功能解释,截取一页做例子:
在这里插入图片描述
FT代表5v容忍

在这里插入图片描述

GPIO的8种工作模式:

在这里插入图片描述
在这里插入图片描述

4种输入模式

在这里插入图片描述
浮空下半部分电路不工作
上拉电阻拉到VDD
在这里插入图片描述
在这里插入图片描述
用于AD转换,输入到ADC

4种输出模式

在这里插入图片描述
2的输出控制电路输入1,NMOS不导通输出1则4567输入取决于外部信号
2的输出控制电路输入0,NMOS导通输出0,io端口被下拉则输入为0
在这里插入图片描述
差别在于不是由CPU写寄存器而是由复用功能外设控制输出
在这里插入图片描述
注意包括了PMOS管
2的输出控制电路输入1,NMOS不导通输出1,io端口被上拉则输入为1
2的输出控制电路输入0,NMOS导通输出0,io端口被下拉则输入为0
在这里插入图片描述
复用输入不同而已
以上图是M3的,M4是最上面的结构
在这里插入图片描述
开漏输出下输出1的电平是由外部上下拉决定的。
推挽输出下输出1是强高电平

GPIO相关配置寄存器

在这里插入图片描述
每一组IO都含有上面10个寄存器,F4一共有7组共70个寄存器!
具体寄存器查询《STM32F4XX中文参考手册》7.4节,讲的很清楚,就没必要当搬运工了QAQ
注意GPIO 端口输出数据寄存器 (GPIOx_ODR) (x = A…I)和GPIO 端口置位/复位寄存器 (GPIOx_BSRR) (x = A…I)的区别:
ODR寄存器置为1则输出为1,置为0则对IO口不产生影响(使用BSRR中的低16位)

BSRR寄存器BSy置为1则输出为1,置为0则对IO口不产生影响
BSRR寄存器BRy置为1则输出为0,置为0则对IO口不产生影响
在这里插入图片描述
另外,所有IO口都可以作为中断输入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值