单片机系统当中,上拉电阻逐渐成为了最为稳定也最为可靠的主要组成部分。大多数人知道上拉电阻在单片机系统当中的重要作用,但却不知道为什么如此重要。本篇文章就将为大家解释上拉电阻的重要性,为什么管脚和单片机大部分都要接上拉电阻呢? 专家称管脚和单片机接上拉电阻是必然的,上拉电阻和下拉电阻相比,上拉电阻要更胜一筹。 众所周知,上拉电阻就是将不确定的信号通过一个电阻钳位在高电平,输入电流,电阻同时起到限流的作用。阻值的强弱只是上拉电阻的组织不同,实际上并没有什么严格区分。对于非集电极开路输出型电路或漏极开路输出型电路来说,上拉在这种类型的电路中对提升电流和电压的能力是有限的,它的主要功能还是为集电极开路输出型电路输出电流通道。
通常来说,在管脚接上拉、下拉的设计方面有两个原因直接决定了上拉电阻的接入。一是在正常工作或单一故障状态下,管脚都是不应该出现不定状态的,如接头脱落后导致的管脚悬空情况。 二是从机体的功耗角度出发,长时间处于管脚等待状态下,管脚端口的电阻上不能消耗太多电流,这一点对电池供电设备的使用寿命和安全性来说尤为重要。从抗扰的角度来说,信号端口也应当优先选择上拉电阻。接入上拉电阻时,在待机状态下源端输入常为高阻态。此时如果没有上拉电阻的接入,那么输入导线将会呈现天线效应,一旦管脚受到了辐射干扰,管脚输入状态就非常容易被感应发生变化。 除此之外,管脚接入上拉电阻后,最重要的一点就是能够提供一个泄流通道,防止高电平干扰。如果此时出现了强辐射干扰,强度甚至超过了Vcc的电平,那么导线上的高电平干扰会通过上拉电阻提供的泄流通道泻放到Vcc上去。因此,无论是怎样的辐射干扰,都不会产生误触发的情况,对系统的安全性能提供了极大的保障。
最近,一些工程师在处理IIC单片机接口的工作问题时,对外部接上拉电阻的做法感到疑惑。由于单片机内部已经设置了上拉电阻,对于外部是否还需要接上拉的情况业界一直存在争议。 由于一些单片机型号内部就设置了上拉电阻,因此有些上拉能力够了,是可以不加上拉电阻,有些不够,那就必须在外部加上拉电阻。在这种情况下,主要是取决于工程师所使用的单片机是否有标准的IIC标准接口。如果单片机使用了标准的IIC接口,那么接口在使能时引脚将进入漏极开路模式,可以省去外部接入的上拉电阻。但如果是使用单片机的引脚模拟IIC协议的话,就需要结合单片机引脚是否支持漏极开路模式或者上拉模式来进行判断,这种情况下一般是需要接入一个外部的上拉电阻的。
除此之外,在IIC接口接入上拉电阻,也可以起到保护作用。由于I2C接口在工作时主要负责的是对高低电平检测的作用,一旦没有了上拉电阻的保护而直接接电源,出现器件拉低时整个系统就非常危险。根据I2C总线规范,总线空闲时两根线都必须为高。根据IIC总线规范的要求,总线空闲时两根线都必须为高。但由于IIC接口采用OpenDrain机制,本身只能输出低电平而无法主动输出高电平,所以只能通过外部上拉电阻RP将信号线拉至高电平。因此I2C总线上的上拉电阻是必须要接入的。