“COMS门的可参考74HC系列。设计时管子的漏电流不可忽略,IO口实际电流在不同电平下也是不同的,上述仅仅是原理,一句话概括为:“输出高电平时要喂饱后面的输入口,输出低电平不要把输出口喂撑了”,否则多余的电流喂给了级联的输入口,高于低电平门限值就不可靠了。
1、从节约功耗及芯片的灌电流能力考虑应当足够大;电阻大、电流小。
2、从确保足够的驱动电流考虑应当足够小;电阻小,电流大。
3、对于高速电路,过大的上拉电阻可能是边沿变平缓。
综合考虑以上三点,通常在1k到10k之间选取。下拉电阻亦是如此。
对上拉电阻和下拉电阻的选择应结合开关管特性和下级电路的输入特性进行设定,主要考虑以下几个因素:
1、驱动能力与功耗的平衡。以上拉电阻为例,一般来说,上拉电阻越小,驱动能力越强,但功耗越大,设计时应注意两者之间的均衡。
2、下级电路的驱动需求。同样以上拉电阻为例,当输出高电平时,开关管断开,上拉电阻应适当选择以能够向下级电路提供足够的电流。
3、高低电平的设定。不同电路的高低电平的门限电平会有不同,电阻应适当设定以确保能输出正确的电平。以上拉电阻为例,当输出低电平时,开关管导通,上拉电阻和开关管导通电阻分压值应确保在零电平门限之下。
4、频率特性。以上拉电阻为例,上拉电阻和开关管漏源极之间的电容和下级电路之间的输入电容会形成“RC延迟”,电阻越大,延迟越大。上拉电阻的设定应考虑电路在这方面的需求。
下拉电阻的设定原则和上拉电阻是一样的。
OC门输出高电平时是一个高阻态,其上拉电流要由上拉电阻来提供,设输入端每端口不大于100uA,设输出口驱动电流约500uA,标准工作电压是5V,输入口的高低电平门限为0.8V(低于此值为低电平)、2V(高电平门限值)。
选上拉电阻时:500uAx8.4K= 4.2V,即选大于8.4K时,输出端能下拉至0.8V以下,此为很小阻值,再小就拉不下来了。如果输出口驱动电流较大,则阻值可减小,保证下拉时能低于0.8V即可。当输出高电平时,忽略管子的漏电流,两输入口需200uA,200uA x15K=3V,即上拉电阻压降为3V,输出口可达到2V,此阻值为很大阻值,再大就拉不到2V了。选10K可用(很大压降/很大电流、很小压降/很小电流)。
COMS门的可参考74HC系列。设计时管子的漏电流不可忽略,IO口实际电流在不同电平下也是不同的,上述仅仅是原理,一句话概括为:“输出高电平时要喂饱后面的输入口,输出低电平不要把输出口喂撑了”,否则多余的电流喂给了级联的输入口,高于低电平门限值就不可靠了。
此外,还应注意以下几点:
A、要看输出口驱动的是什么器件,如果该器件需要高电压的话,而输出口的输出电压又不够,就需要加上拉电阻。
B、如果有上拉电阻,那它的端口在默认值为高电平,你要控制它必须用低电平才能控制,如三态门电路三极管的集电极或二极管正极去控制,把上拉电阻的电流拉下来成为低电平。
C、尤其用在接口电路中,为了得到确定的电平,一般采用这种方法来保证正确的电路状态,以免发生意外。比如在电机控制中,逆变桥上下桥臂不能直通,如果它们都用同一个单片机来驱动,必须设置初始状态,防止直通。
电阻在选用时,选用经过计算后与标准值很相近的一个。
P0为什么要上拉电阻的原因包括:
1、P0口片内无上拉电阻。
2、P0为I/O口工作状态时,上方FET被关断,从而输出脚浮空,因此P0用于输出线时为开漏输出。
3、由于片内无上拉电阻,上方FET又被关断,P0输出1时无法拉升端口电平。
P0是双向口,其它P1、P2、P3是准双向口。之所以称为“准双向口”是因为在读外部数据时要先准备一下。单片机在读准双向口的端口时,先应给端口锁存器赋1,目的是使FET关断,不至于因片内FET导通使端口钳制在低电平。上下拉一般选10k。