细说STC15单片机I/O口的四种工作模式

STC15单片机I/O口有四种模式,分别是准双向口、推挽输出、高阻输入和开漏输出。那么什么是准双向口、推挽输出、高阻输入和开漏输出呢?单片机的这四种模式又是怎么体现出来呢?我们来看看STC15芯片手册上各种模式的说明如下图所示。

准双向口:与传统8051的P1、P2和P3口相同模式,灌电流达到20ma。

准双向一般只能用于数字输入输出,输入时为弱上拉状态(约50K上拉),端口只有两种状态:高或低。准双向口读外部状态前,要先锁存为1,才能读到外部正确的状态。

推免输出:推挽模式一般用于需要更大驱动电流的情况,强上拉输出可达20mA,要外接限流电阻。推挽输出的最大特点是可以能真正的输出高电平和低电平,在两种电平下都具有驱动能力。

高阻输入:高阻输入时无论高低电平都很小(一般几个微安量级)。高阻输入用于作输入脚,基本没有电流流入。

开漏输入:内部电阻上拉断开,所以开漏输出无法真正输出高电平,即高电平时没有驱动能力,需要借助外部上拉电阻完成对外驱动,输出电平完全由上拉电阻连接的电源电平决定。所以在需要进行电平转换的地方,非常适合使用开漏输出。

    单片机的这四种模式又是怎么体现出来呢?这里分析的话可以把单片机的每个可以输入输出的引脚内部结构简化为下面的这样一个电路图:S1、S2、S4三个开关和一个10K的上拉电阻。R1之所以叫上拉电阻是因为当S2闭合后,单片机的引脚通过R1拉到电源上。下面我们说一下这个工作模式是怎么体现出来的。

     准双向口输出1:则S2闭合,S4断开,此时单片机的引脚通过 R1拉到电源上,输出高电平。

      准双向口输出0:则S2闭合,S4闭合,此时单片机的引脚通过S4接地,输出低电平。

     推免输出1:则S1闭合,S4断开,此时单片机的引脚直接接到电源上,输出高电平。

      推免输出0:则S1断开,S4闭合,此时单片机的引脚通过S4接地,输出低电平。

      开漏输出1:则开关全部断开,外接上拉电阻,输出高电平。

      开口输出0:则S4闭合,此时单片机的引脚通过S4接地,输出低电平。

      高阻输入:  则开关全部断开。

猜你喜欢

转载自blog.csdn.net/chanchairen/article/details/123300181