李敏之 严天峰
I/O口是单片机的基本资源,对于常用的51内核的单片机而言,如ATMEL公司的89S(C)51或Winbond公司的W78系列单片机一般有四个双向I/O口P0~P3,这四个I/O口都是双向端口。每个端口都包括一个锁存器、一个输出驱动器和一个输入缓冲器。除作为普通I/O使用外,P0和P2端口还可以作为地址/数据总线使用。这时,P0端口输出地址总线的低8位字节,P2端口输出地址总线的高8位字节。P3端口的全部和P1端口的1、2脚(仅89C52以上芯片)为双向功能端口,即不仅可以作为输入输出端口,还具有其它功能。作为I/O口使用时,P1 、P2和P3 端口内部已接上拉电阻,因此也称之为准双向口。用作输入时,可由TTL或CMOS电路驱动,可以由集电极或漏极开路的输出电路所驱动。P1 、P2和P3 端口的内部上拉电阻是由场效应管组成的,并非线形电阻。其它端口,输出为漏极开路输出,与外部设备接口时要外接上拉电阻。当P2 、P0端口作地址/数据总线使用时,不可作为普通I/O口使用;作为普通I/O口使用时,P0口一定要外接10kΩ左右的上拉电阻。