端口的负载能力和接口要求

五、端口的负载能力和接口要求

MCS-51单片机的四个I/O端口在结构上是基本相同的,但又各具特点。P0口的输出级与P1~P3口的输出级在结构上是不同的,前者没有内部上拉电阻,因此,它们的负载能力和接口要求也各不相同。

(1)P0口的每一位可驱动八个LS TTL负载。P0既可作I/O端口使用,也可作为地址/数据总线使用。当把它当作通用I/O口输出时,由于输出级是开漏电路,在驱动NMOS或其他电流负载时,只有外接上拉电阻,才有高电平输出;用作输入时,应先向口锁存器(80 H)写“1”。当把它当作地址/数据总线时(片外扩展ROM或RAM的情况),则无须外接上拉电阻,但此时不能再作I/O口使用。

(2)P1~P3口输出级接有内部上拉负载电阻,它们的每一位输出可驱动四个LS TTL负载。作为输入口时,任何TTL或NMOS电路都能以正常的方式驱动89C51单片机(CHMOS)的P1~P3口。由于它们的输出级具有上拉电阻,所以也可以被集电极开路(OC门)或漏极开路所驱动,而无须外接上拉电阻。作输入时,必须先在相应端口锁存器上写“1”,使驱动管FET截止。

(3)系统复位时,端口锁存器全为“1”。

对于89C51单片机(CHMOS)来讲,端口只能提供几毫安的输出电流,故当作为输出口去驱动一个普通晶体管的基极(或TTL电路输入端)时,应在端口与晶体管基极间串接一个电阻,以限制高电平输出时的电流。