\\\插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我( 禾厶-亻言-手戈 )。最近比较闲,带做毕设,带学生参加省级以上比赛///
嵌入式篇-IO引脚
最近精力不够,没办法学习咯
关注他
IO引脚即输写输出引脚,能够说是数字电路中最为根底的局部。就像我们在进修一门新的语言,我们都会先去编写一个“hello,world”的程序一样,我们进修嵌入式往往做的第一个例程,就是点灯。点灯实验可能让你对IO引脚有了个直观上的了解,但现实中上,嵌入式芯片的IO引脚有很多种模式。
STM32GPIO构造图
1:上拉输写模式:
若是嵌入式芯片的IO引脚配置程上拉模式,那么芯片上电以后,该IO引脚在芯片内部会通过一个电阻被上拉至一个高电平(该电平一般就是芯片的工作电压,但是有些嵌入式芯片的IO电平会有专门的电源),在外界没有输写的情况下,从程序中读到的该引脚数据则为1,高电平。
2:下拉输写模式:
和上拉模式相对应,若是将IO引脚配置成下拉模式,芯片上电以后,该IO引脚也会通过电阻被下拉至地,在外界没有输写的情况下,从程序中读到的该引脚数据为0,低电平。、
高低拉模式是嵌入式中最为常见的两种模式,一般在电路初始化的时候我们不仅要设置引脚的高低拉模式,有时候还会再引脚外部自己加入上拉或者下拉电阻,以保证系统在上电过程中芯片引脚处于一个稳定的状态。
3:浮空输写模式:
浮空输写下的IO引脚既不接上拉电阻,也不接下拉电阻,此时IO引脚呈现的是一种高阻状态,经芯片内部的触发器输写,这种情况下其引脚电压是个不确定的值,由外部输写决定。这种高阻状态下,非常只用于I2C以及USART的接管端。
4:模拟输写模式:
这种模式一般用于ADC模式,由于该种模式下不经过触发器,也不接上拉和下拉电阻,因此也很适用于低功耗的场合。
5:推挽输出模式:
所谓的推挽输出模式,则是依据其工作方式来命名的。在输出模式下,电路会经过一个由P-MOS管和N-MOS管组成的单元电路(如图中下半局部)。在输出高电平时,P-MOS管导通;低电平的时候,N-MOS管导通。两个管子轮流导通,一个负责灌电流,一个负责拉电流,使其负载才能和开关速度都比普通的方式很大的提高。
6:开漏输出模式:
这种模式下,假设我们输出为0,低电平,则使N-MOS管导通
绿色图标【‟で】airruimcu
接地,若控制输出为1(没法直接输出高电平),则既不输出高电平,也不输出低电平,为高阻态。也就是说,开漏模式下的IO引脚电平其实是由外部电路决定的,在正常运用时必需外部接入一个上拉电阻,此时输出的高电平,其实是外部上拉电阻所接电源电压。若是多个开漏输出的IO引脚连接到一起,必需满足所有的IO引脚都输出高阻态,才能由上拉电阻提供高电平,有一个引脚为低电平,那线路就相当于短路接地(线与功能)。我们在设计电路时若是看到芯片手册中有开漏输出的情况,一定要记得加上拉。
7:复用推挽输出模式:
复用推挽输出是相对于普通推挽输出而言的,由于嵌入式芯片的IO引脚有很多功能,有最常见的GPIO,也有复用功能,假如USART中的串口输出引脚,则需配置成这种模式,由于其高低电平都能够输出,带载才能强。
8:复用开漏输出:
同样,复用开漏输出是对应于普通开漏输出而言的,在运用该功能时必需所有的引脚接入上拉电阻,上拉电阻决定功耗和速度。一般用于IC、SMBUS这些须要线与功能的复用场合。
以上就是在嵌入式领域比较常见的IO工作模式
需要学习单片机的朋友 ,做毕业设计的同学,参加竞赛,关注我们,与导师一起学习成长,共同进步,还有更多资料领取。
说了这么多,大家记得留意下方评论第一条(或者私信我)有干货~
-END-
*本文系网络转载,版权归原作者所有,如有侵权请联系删除