MCU中上拉和下拉的意义
扫描二维码
随时随地手机看文章
在很多MCU中,都有上拉和下拉的概念,从8051到AVR再到ARM,都有!
上拉:
简单理解起来,上拉就是通过一个电阻接到高电平,在MCU中主要是为了提高芯片的驱动能力,如8051的P0口,在8051的PDF中,我们可以看到:
(1)每个单个的引脚,输出低电平的时候,允许外部电路,向引脚灌入的最大电流为 10 mA
(2)每个 8 位的接口(P1、P2 以及 P3),允许向引脚灌入的总电流最大为 15 mA,而 P0 的能力强一些,允许向引脚灌入的最大总电流为 26 mA;全部的四个接口所允许的灌电流之和,最大为 71 mA
图中的 D1,是接在正电源和引脚之间的,这就属于灌电流负载,D1 在单片机输出低电平的时候发光。这个发光的电流,可以用电阻控制在 10 mA 之内。
图中的 D2,是接在引脚和地之间的,这属于拉电流负载,D2 应该在单片机输出高电平的时候发光。但是单片机此时几乎没有输出能力,必须采用外接“上拉电阻”的方法来提供 D2 所需的电流。
在引脚和大地之间有一个三极管,而pin则相当于三极管的基极,起到开关阀门的作用,使上面的电流可以通过LED,流到大地中。
此时,P2.0就起到这个作用,用小电流(不能点亮LED)来控制大电流,上拉电阻同时也起到限流的作用。
另外,为了防止临界电平引起误操作,也采用上拉电阻的方式,使得一个不确定的信号用电阻嵌定在高电平状态。减少意外发生。如ARM的中断就需要。
综上:设计单片机的负载电路,应该采用“灌电流负载”的电路形式,以避免无谓的电流消耗。
下拉:
下拉就是通过一个电阻接到低电平,把输出嵌位在低电平。同时对输出电流起到限流的作用,由于在实际中比较少用到,此处只是略微提一下。