STM32 GPIO

通用输入/输出(GPIO)外设的功能:
* +初始化和反初始化函数
* + IO操作功能
GPIO外围功能
根据数据表中列出的每个I/O端口的具体硬件特性,每个
GPIO (General Purpose IO)端口位,可通过软件单独配置
在几个模式:


(+)输入模式
(+)模拟模式
(+)输出模式
(+)交替功能模式
(+)外部中断/事件行


在复位期间和刚刚复位之后,交替的功能和外部中断
线路不活动,I/O端口配置为输入浮动模式。

所有的GPIO引脚都有较弱的内部上拉和下拉电阻,可以
激活。

在输出或交替功能模式下,每个IO都可以配置在开路排水沟或推拉上
类型和IO速度可根据VDD值选择。

所有端口都具有外部中断/事件能力。使用外部中断
行,端口必须配置为输入模式。所有可用的GPIO引脚
连接到从EXTI0到EXTI15的16个外部中断/事件行。

外部中断/事件控制器由多达20个边缘检测器组成
Line设备,或其他设备中的19个边缘检测器用于生成事件/中断请求。

每个输入行可以独立配置来选择类型(事件或中断)和
相应的触发事件(上升或下降或两者都有)。

每一行也可以被屏蔽
独立。一个未决寄存器维护中断请求的状态行

如何使用这个驱动程序

开启GPIO APB2时钟的方法如下:__HAL_RCC_GPIOx_CLK_ENABLE()。

使用HAL_GPIO_Init()配置GPIO引脚。

使用GPIO_InitTypeDef结构中的“mode”成员配置IO模式

使用来自GPIO_InitTypeDef的“Pull”成员激活上拉、下拉电阻
结构。

当输出或交替功能模式选择时:速度为
通过GPIO_InitTypeDef结构中的“Speed”成员配置

当一个引脚用作ADC通道时,需要模拟模式
或DAC输出

在外部中断/事件选择的情况下,“Mode”成员
GPIO_InitTypeDef结构选择类型(中断或事件)和
相应的触发事件(上升或下降或两者都有)。

如果选择外部中断/事件模式,请配置NVIC IRQ优先级
使用HAL_NVIC_SetPriority()映射到EXTI行,并使用
HAL_NVIC_EnableIRQ()。

使用HAL_GPIO_LockPin()锁定引脚配置直到下次重置。

在重置期间和刚刚重置之后,备用功能不是
GPIO引脚配置为输入浮动模式(JTAG除外)
针)

LSE振荡器引脚OSC32_IN和OSC32_OUT可以作为通用引脚使用
(PC14和PC15,分别)当LSE振荡器关闭。LSE振荡器引脚
优先级高于GPIO功能

HSE振荡器引脚OSC_IN/OSC_OUT可作为
通用PD0和PD1,分别在HSE振荡器关闭时。
HSE优先于GPIO功能。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值