全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 接口/总线/驱动 >

单片机STM32的引脚模式设置

时间:2023-07-03 16:42

人气:

作者:admin

标签: 单片机  模式    STM32  引脚 

导读:单片机STM32的引脚模式设置-单片机STM32的引脚有多种方式可以选择。...

单片机STM32的引脚有多种方式可以选择。

如果你是用直接写寄存器来配置的话,那么,看上手册,给“配置寄存器”对应的位写0或者1就可以达到目的。如下图:

图片

(点击图片可放大)

如果是用库函数来配置的话,就需要知道下面这个结构体中的变量代表的意义。

图片

库函数,选择好GPIO_Mode之后,就要使用GPIO_Init()函数来配置,你可以打开这个配置函数,实际上也是在对“配置寄存器”进行写操作。

先解释一下这个结构体中的各个变量的意思:

GPIO_Mode_AIN:模拟输入模式

GPIO_Mode_IN_FLOATING:浮空输入模式

GPIO_Mode_IPD:下拉输入模式

GPIO_Mode_IPU:上拉输入模式

GPIO_Mode_Out_OD:通用开漏输出模式

GPIO_Mode_Out_PP:通用推挽输出模式

GPIO_Mode_AF_OD:复用开漏输出模式

GPIO_Mode_AF_PP:复用推挽输出模式

前四个是输入模式,后四个是输出模式。

输入和输出

从51过来的人,对输入和输出比较陌生。51单片机不用设置输入和输出模式,自动变换,无需程序配置,当我们写程序读引脚的电平的时候,实际上就是作为输入模式来使用,当我们写程序让引脚输出电平的时候,实际上就是作为输出模式来使用。也就是说,并不是51单片机没有输入和输出这个概念,而是你已经使用了很久却没有发现。

STM32与51的区别就是:当我们要读引脚电平的时候,也就是作为输入,我们必须要先把引脚设置为输入功能,才可以读。当我们要控制引脚高低电平的时候,也就是作为输出,我们必须要先把引脚设置为输出功能,才可以设置。

上拉与下拉

概念比较抽象,你只需要记住:在引脚上没有外界干扰的情况下,上拉就是把引脚设置为高电平了,你用万用表量上拉引脚,就是高电平;下拉就是把引脚设置为低电平了,你用万用表量下拉引脚,就是低电平,也就是0V。

推挽与开漏

概念比较抽象,你只需要记住:设置为推挽,就是提高了引脚的输出电流能力。设置为开漏,就是提高了引脚的输入电流能力。然后还要知道,设置为开漏时,如果外部不加上拉电阻,默认输出是低电平。

通用与复用

通用就是作为普通的输入和输出引脚。复用就是该引脚可以作为SPI引脚I2C引脚等其他功能的引脚。

使用介绍

结合上面讲的,可以得到一些简单的应用设置方式。

比如检测按键,就应该设置为输入,如果外部没有加上拉电阻,你就需要设置引脚为上拉输入,这样如果检测到引脚是低电平,就是按下按键了。如果外部加了上拉电阻,你这时既可以把引脚设置为上拉输入,也可以设置为浮空输入,设置为这两种,由于外部上拉电阻的原因,默认就是高电平,同样,检测到低电平时,就是按键按下了。

当你要控制引脚高低电平做应用时,就是需要把引脚设置为输出功能。例如驱动一个器件,驱动一个发光二极管等。如果你要使用高电平点亮发光二极管,就需要把引脚设置为推挽输出,以增大电流输出能力,如果你设置为开漏输出,发光二极管肯定是点不亮了。但是如果你使用低电平点亮发光二极管,那么设置为开漏和推挽输出都可以正常点亮发光二极管。

上面内容比较抽象,需要结合实际才可深入理解。暂时理解不了的,不用着急,接触的多了,自然会理解透彻的。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信