stm32 GPIO口设置

一、在配置端口之前首先要完成以下事情:1、自己新建好工程、配置好时钟2、准备好一个端口已经配置好的模版3、在工程中先打开:main.cstm32f4xx_hal_gpio.hstm32f4xx_hal_gpio.c二、使能端口时钟调用函数:__HAL_RCC_GPIOF_CLK_ENABLE();这样GPIOF的时钟就使能了三、配置好端口初始化在stm32f4xx_hal_gpio.h中找到端口初始化函数的声明处:1、GPIO_TypeDef *GPIOx,这个.
摘要由CSDN通过智能技术生成

一、在配置端口之前首先要完成以下事情:
1、自己新建好工程、配置好时钟

2、准备好一个端口已经配置好的模版

3、在工程中先打开:

main.c

stm32f4xx_hal_gpio.h

stm32f4xx_hal_gpio.c

二、使能端口时钟

调用函数:__HAL_RCC_GPIOF_CLK_ENABLE();

这样GPIOF的时钟就使能了

三、配置好端口初始化
在stm32f4xx_hal_gpio.h中找到端口初始化函数的声明处:

1、GPIO_TypeDef  *GPIOx,这个很简单,就不说了,调用的时候选择为GPIOA-GPIOG就可以

2、GPIO_InitTypeDef *GPIO_Init,这个是重点

我们首先找到它的定位位置:

我们可以看到这是一个类型别名,这样的结构体类型包含五个,pin(引脚)、Mode(模式)、Pull(输出)、Speed(速度)、Alternate(端口复用功能 );那么我们现在可以知道,首先要定义一个这样的结构体变量,然后对它的这五个成员进行赋值(复用功能可用可不用),然后再去使用它,去调用这个端口初始化函数,最后就可以配置好端口

 

四、端口的配置本质
1、输入/输出模式(参考stm32手册)

(1)GPIO_Mode_AIN 模拟输入 
(2)GPIO_Mode_IN_FLOATING 浮空输入
(3)GPIO_Mode_IPD 下拉输入
(4)GPIO_Mode_IPU 上拉输入
(5)GPIO_Mode_Out_OD 开漏输出
(6)GPIO_Mode_Out_PP 推挽输出
(7)GPIO_Mode_AF_OD 复用开漏输出
(8)GPIO_Mode_AF_PP 复用推挽输出

      在STM32中选用IO模式
(1) 浮空输入_IN_FLOATING ——浮空输入,可以做KEY识别,RX1
(2)带上拉输入_IPU——IO内部上拉电阻输入
(3)带下拉输入_IPD—— IO内部下拉电阻输入
(4) 模拟输入_AIN ——应用ADC模拟输入,或者低功耗下省电
(5)开漏输出_OUT_OD ——I

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值