STM32的八种工作模式

一、模式介绍

STM32单片机具有高性能、低成本、低功耗的优点,与它打交道就必须先了解它的几种工作模式,它共有八种IO口模式,分别是:模拟输入、浮空输入、上拉输入、下拉输入、开漏输出、推挽输出、复用开漏输出和复用推挽输出。

在这八种工作模式中分为:

1、四种输入模式

(1)GPIO_Mode_AIN                      模拟输入
(2)GPIO_Mode_IN_FLOATING     浮空输入
(3)GPIO_Mode_IPD                      下拉输入
(4)GPIO_Mode_IPU                      上拉输入

2、四种输出模式

(5)GPIO_Mode_Out_OD          开漏输出
(6)GPIO_Mode_Out_PP          推挽输出
(7)GPIO_Mode_AF_OD           复用开漏输出
(8)GPIO_Mode_AF_PP           复用推挽输出

 二、模式框图

三、模式解析

  3.1  模拟输入

模拟输入,即关闭施密特触发器,将电压信号传送到片上外设模块(不接上、下拉电阻)。通常是用于ADC采集电压输入通道,进行AD转换。

3.2  浮空输入

浮空输入。浮空输入状态下,IO的电平状态是不确定的,完全由外部输入决定,如果在该引脚悬空的情况下,读取该端口的电平是不确定的。

通常该模式用于接一些传感器的信号端或者按键等外设,通过读取外部信号的电平变化确定该状态。

3.3  下拉输入

下拉输入,单片机内部接下拉电阻,作用就是把默认电压拉成低电平 ,相当于单片机上电后在该模式下默认GPIO引脚为低电平。当外部输入一个高电平时,该引脚也会变成高电平。

3.4  上拉输入

 上拉输入,单片机内部接上拉电阻,作用就是把默认电压拉高 ,相当于单片机上电后在该模式下默认GPIO引脚为高电平。当外部输入一个低电平时,该引脚也会变成低电平。

3.5  开漏输出

 

开漏输出模式下,只有N-MOS管工作,当我们输出控制为0(低电平)时,N-mos管导通,这个时候会把I/O引脚的电平通过N-mos拉到地,I/O端口的电平变成低电平。

当我们输出控制为1(高电平)时则P-MOS管和N-MOS管都会关闭,输出指令就不会起作用。同时I/O端口的电平状态由外部的上拉电阻或者下拉电阻决定,如果没有上拉或者下拉 IO口就处于悬空状态。(注意,悬空状态下的电平是不确定的)。

同时,施密特触发器处于打开状态,意味着I/O端口的电平可以通过输入电路进行读取;需要注意,I/O端口的电平不一定是输出的电平。

通常使用开漏输出时外部要加一个上拉电阻。

3.6  推挽输出

 推挽输出模式,N-MOS管和P-MOS管都工作。

控制输出为0(低电平)时,P-MOS管关闭,N-MOS管导通,I/O端口的电平为低电平。

控制输出为1(高电平)时,P-MOS管导通,N-MOS管关闭,I/O端口的电平为高电平。

同时,施密特触发器处于打开状态,意味着I/O端口的电平可以通过输入电路进行读取;此时,I/O端口的电平一定是输出的电平。

3.7 复用开漏输出

复用开漏输出,与开漏输出功能类似,区别是——不再通过CPU直接输出寄存器的状态,而是通过其它外设输出高低电平。其它功能与开漏输出完全相同。

可以理解为GPIO口被用作第二功能时的配置情况,即并非作为通用IO口使用。

3.8 复用推挽输出

复用推挽输出,与推挽输出功能类似,区别是——不再通过CPU直接输出寄存器的状态,而是通过其它外设输出高低电平。其它功能与推挽输出完全相同。

可以理解为GPIO口被用作第二功能时的配置情况,即并非作为通用IO口使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值