stm32 IO口的八种输入输出模式

记录一下stm32 IO口的八种输入输出模式的学习
在这里插入图片描述
首先,可以看见stm32的输入输出模式有以上8种
先从简单的开始说吧

上拉输入和下拉输入:

看图:
上拉输入
由上图可见,当IO口设置为上拉输入的时候,IO口内部的上拉电阻就被接上了,从字面意思可以理解,上拉嘛,电平被上拉了,所以在没有输入的情况下,都是为高电平的状态,而当外部电路输入低电平的时候,才被拉低,经过触发器,再到寄存器,最后到CPU。
下拉输入
而下拉输入和上拉输入可以说就是在内部选择接上拉还是接下拉而已,当选择下拉输入的时候,上拉电阻的连接就会被断开,然后下拉电阻的连接就会被连上,此刻IO口的状态就一直处于低电平。

模拟输入:

应用在ADC模拟输入,或者低功耗下可以省电,这个也是可以直接从字面意思上理解,就不多做记录。

浮空输入:

在这里插入图片描述
浮空输入,浮空嘛,在空中,碰不到顶,也不着地,所以不接上拉电阻,也不接下拉电阻,就在中间,那IO到底是0还是1呢,高电平还是低电平呢,谁都不确定,全看这个IO连接的外部电路给的是0还是1,高电平还是低电平,然后再给到触发器,再到寄存器,再到CPU;目前我用过一次就是在写关于18b20的程序里面,因为单线的,所以在时序上比较严格,在初始化18b20的时候,其中有一个步骤是需要释放总线的,查了很久这个释放总线是什么意思,最后我就是在释放总线这一步把与总线相连的IO口(即总线),设置为浮空输入,释放了总线以后,CPU对这个口输出0输出1就没用了,总线到底是0还是1就不确定了,就全看外部电路了,不过在输入模式下,还是可以通过CPU读取到的,希望这个栗子可以帮助理解。

开漏输出模式:

开漏输出
因为模电学得不好,所以也就只能大概的讲一下方便自己理解的方法了,等日后模电学好以后一定展开讲讲。
在这里插入图片描述

在开漏输出模式下,就可以理解为IO口内部就是一个这样的三极管,如果没有接上拉电阻的话,输出1(高电平),只能是高阻态,还是只会输出低电平,当然在正常输出低电平的时候,三极管截至,肯定也是没有输出的,只有接上了上拉电阻,就像三极管的共射极放大电路,在集电极上提供一个电压,接上上拉电阻,这个时候IO口再输出一个高电平,才能使这个三极管导通,放大电路开始工作,这样才能输出1,才有电流驱动外部电路,当然啦,开漏输出也确实一般都用在电流驱动。
另外,IO口在开漏输出模式下,也是可以读取IO口的状态的,看上面图4567的路径就可以明白了。

推挽输出:

在这里插入图片描述
在这里插入图片描述
在推挽模式下,IO口内部的电路就可以理解为上面这个图,两个二极管,当CPU让IO口输出0的时候,上面的NPN三极管就截止,下面的PNP三极管导通,输出0出去给外部电路,当CPU让IO口输出1的时候,上面的NPN三极管导通,下面的PNP三极管截止,输出1给外部电路。两个三极管轮流工作,一推一拉的,也叫推拉式输出,既可以提高电路的负载能力,又可以提高开关速度,具体使为什么,等我学好模电以后我再回来解释。

最后,复用推挽和复用开漏输出,也就是在这个IO口作为第二功能的IO口复用的时候才设置的模式,例如串口,就以stm32f103c8t6来讲,PA9,PA10既是普通的IO口,也是串口1的RX和TX口,作串口的发送和接收口就是它们的复用功能,这个时候呢,就可以设置为复用推挽或者复用开漏了。

完结,撒花!

  • 16
    点赞
  • 102
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
STM32是一种微控制器系列,具有丰富的输入输出模式输入输出模式是指STM32芯片如何与外部设备进行数据交互和通信的方式。 STM32输入输出模式主要包括通用输入/输出(GPIO)、模拟输入/输出和专用输入/输出等。 通用输入/输出(GPIO)是STM32芯片最常用的输入输出模式。它可以将某个引脚设置成输入模式,用于接收外部传感器或其他外设的信号;也可以将某个引脚设置输出模式,用于控制外部设备的状态。可以通过编程去配置引脚的输入输出属性,并读取或设置引脚的电平状态。 模拟输入/输出模式是指STM32芯片可以模拟电压信号的输入输出。它可以通过ADC模块将模拟信号转换为数字信号进行处理,也可以通过DAC模块将数字信号转换为模拟信号输出到外部设备。 专用输入/输出是指STM32芯片具有一些特殊用途的输入输出引脚。例如,某些引脚可以作为串行通信接(如UART、SPI、I2C)的数据收发引脚;某些引脚可以用作定时器的输入捕获/输出比较功能等。 理解STM32输入输出模式需要学习它的技术手册和相关的编程手册,了解每个引脚的功能和操作方法。通过灵活配置引脚的输入输出属性,可以实现与各种外部设备的通信和数据交互。在使用过程中,还需要注意电平的逻辑和电源的要求,以确保正常的信号传输和设备工作。 总之,STM32输入输出模式提供了灵活、多样的硬件接,可以满足不同应用场景的需求。通过合理配置和使用,可以实现智能控制、数据采集和通信等功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值