STM32F4 | GPIO工作原理和配置 | GPIO库函数 | IO口操作步骤

一、GPIO基础知识

1.GPIO是什么?

  GPIO的全称是general purpose intput output。它是通用输入输出端口。既可以做输入也可以做输出。GPIO端口可通过程序配置成输入或者输出。

2.引脚和GPIO的区别和联系?

  STM32F4的引脚中,有部分是做GPIO使用,部分是电源引脚/复位引脚/启动模式引脚/晶振引脚/调试下载引脚。
在这里插入图片描述

  • 一共有9组IO: PA~PI,其中PA~PH 每组16个IOPI只有PI0~PI11,一共有140个IO口:16*8+12=140

STM32F4中约有140个引脚可做IO口使用,还有36个引脚可做电源引脚/复位引脚/启动模式引脚/晶振引脚/调试下载引脚等

3.绝多数引脚都是GPIO,有限的引脚怎么实现更多的功能?

  STM32的大部分引脚除了当GPIO使用外,还可以复用为外设功能引脚(比如串口)。一个引脚,可以作为IO口,同时也可以作为复用功能外设引脚
  复用的原理 可以用图像抽象如下: 在这里插入图片描述
通过开关控制引脚组,可以大大节省IO口资源。

4. 怎么知道具体的芯片外设资源?

  可以通过查找ST MCU选型手册来查找。
在这里插入图片描述

5.怎么查看GPIO引脚功能?

  每个STM32芯片的芯片数据手册(例如:STM32F429IGT6.pdf)都会提供引脚功能描述,如下表。
在这里插入图片描述
其中的FT标识表示该IO口可以5V容忍。

二、GPIO的8种工作模式

  GPIO有8种工作模式:

  • 4种输入模式

    • 输入浮空
      在这里插入图片描述
      IO口电平直接进入TTL施密特触发器(上拉与下拉均没有起作用),然后到达输入数据寄存器,这样CPU可以通过输入数据寄存器来读取IO口的状态

    • 输入上拉
      在这里插入图片描述
      输入上拉与输入浮空的区别就是上拉会起作用。

    • 输入下拉
      在这里插入图片描述
      输入下拉与输入浮空的区别就是下拉会起作用。

    • 模拟输入
      在这里插入图片描述
      IO口电平直接进入模拟通道,ADC控制单元采集电压信号,CPU读取ADC控制单元相关的寄存器来读取模拟信号并且转化为数字信号(不是CPU转换的,而是ADC控制单元转换的)。

  • 4种输出模式(带上下拉)

    • 开漏输出(带上拉或者下拉)
      在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值