你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32 GPIO的功能描述及配置

[复制链接]
STMCU小助手 发布时间:2022-5-9 19:00
前言
开发了好久的STM32,但一直没有总结博客,今天就来总结一下STM32系列博客,也算是自己记的笔记。
第一篇文章就从GPIO开始
IO口即input & out 输入与输出,单片机控制外设的一个重要方法。

以下参考STM32参考手册记录。

提示:以下是本篇文章正文内容,下面案例可供参考

一、GPIO功能描述
首先 STM32 的 IO 口可以由软件配置成如下 8 种模式:
1、输入浮空
2、输入上拉
3、输入下拉
4、模拟输入
5、开漏输出
6、推挽输出
7、推挽式复用功能
8、开漏复用功能
每个 IO 口可以自由编程,但 IO 口寄存器必须要按 32 位字被访问。

1GM8KWRR}9KIEAKJH~}P.png

FD%P8YL$(RYL$_VE@MPVI`K.png

在 MDK 中是通过一个枚举类型定义的:

  1. typedef enum
  2. { GPIO_Mode_AIN = 0x0, //模拟输入
  3. GPIO_Mode_IN_FLOATING = 0x04, //浮空输入
  4. GPIO_Mode_IPD = 0x28, //下拉输入
  5. GPIO_Mode_IPU = 0x48, //上拉输入
  6. GPIO_Mode_Out_OD = 0x14, //开漏输出
  7. GPIO_Mode_Out_PP = 0x10, //通用推挽输出
  8. GPIO_Mode_AF_OD = 0x1C, //复用开漏输出
  9. GPIO_Mode_AF_PP = 0x18 //复用推挽
  10. }GPIOMode_TypeDef;
复制代码

输入输出方式作用:
1)作为普通GPIO 输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时不要使能该引脚对应的所有复用功能模块。
2)作为普通GPIO 输出:根据需要配置该引脚为推挽输出或开漏输出,同时不要使能该引脚对应的所有复用功能模块。
3)作为普通模拟输入:配置该引脚为模拟输入模式,同时不要使能该引脚对应的所有复用功能模块。
4)作为内置外设的输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时使能该引脚对应的某个复用功能模块。
5)作为内置外设的输出:根据需要配置该引脚为复用推挽输出或复用开漏输出,同时使能该引脚对应的所有复用功能模块。

二、GPIO寄存器配置
1.外设GPIO配置

$ID{ESIKE~E0)02SZ_B9(8L.png

2.GPIO寄存器

1.端口配置低寄存器(GPIOx_CRL)

(U}(78D3Z20~ZCFYOVZWO.png

2.端口配置高寄存器(GPIOx_CRH)

2TYTHP9~S{K]JVZQ3A2LV.png

3.端口输入数据寄存器(GPIOx_IDR)

)KH1)Z0M3VBCP(C~]TINQ)3.png

4.端口输出数据寄存器(GPIOx_ODR)

RWOU4T$P$GGPO01)77EF}2D.png

5.端口位设置/清除寄存器(GPIOx_BSRR)

D395)QW2I0D~LQ54Q484OND.png

6.端口位清除寄存器(GPIOx_BRR)

B7)W438C7}HBROYAFVQ9_)J.png
348fc5373f8746689ca118b728a3580b.png

收藏 评论0 发布时间:2022-5-9 19:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版