从图中可以看出,P0口既可以用作I/O,又可以用作地址/数据 PDFcreatedpdfFactoryProtorialversion.pdffactory1.2 当P0口用作普通I/O输出时,CPU发送控制电平“0” ”阻断“与”门,输出上拉场效应管T1截止,同时多路开关MUX与输出驱动场效应管T2的栅极导通。 因此,内部总线与P0口同相。 由于输出驱动级是开漏电路,因此在驱动 NMOS 或其他电流源负载时需要外部上拉电阻。 P0的输出级可以驱动8个LSTTL负载。 输入时-读引脚或读锁存器读引脚:通过传输指令(MOV)实现; 以下缓冲区用于读取端口引脚数据。 当执行从端口输入的指令时,读脉冲打开三态缓冲器,使端口引脚上的数据通过缓冲器读入内部总线。 PDFcreatedpdfFactoryProtorialversion.pdffactory 读锁存器:有些指令如:ANLP0、A 称为“读-修改-写”指令,需要读锁存器。 上部缓冲器用于读取端口锁存器数据。 **原因:如果此时端口的负载正好是一个晶体管基极,而原端口输出值为1,那么导通的PN结会将端口引脚高电平拉低; 如果此时直接读取端口引脚信号,会将原来输出的“1”电平误读为“0”电平。
现在使用读输出锁存器代替读引脚。 图中,上面的三态缓冲器是为读锁存器的Q端信号设计的。 读输出锁存器可以避免上述可能出现的错误。 **注:在信号之前读取数据之前,先向对应锁存器写入1的I/O端口称为准双向端口; (ANLP0,A)准双向端口:PDFcreatedpdfFactoryProtorialversion.pdffactory 从图中可以看出,读取端口数据时,由于该引脚连接有输出驱动FET,如果T2导通,则会拉高输入高电平为低电平,造成误读。 因此,在端口进行输入操作之前,应先向端口锁存器写入“1”,使T2截止,引脚处于浮空状态,成为高阻输入。 这就是所谓的准双向端口。 2、系统扩展时P0用作地址/数据总线时,P0口用作地址/数据总线时分为: (1)P0引脚输出地址/数据信息:CPU发送控制电平“1”,打开“与”门,使多路开关MUX反相连接CPU的地址/数据总线和T2门,输出地址或数据。从图中,上下场效应管反相,形成推挽输出电路,其负载能力大大增强,P0作为地址/数据总线——真正的双向端口(2)P0。引脚输出地址/输入数据:输入信号通过输入缓冲器从该引脚进入内部总线,此时CPU自动将MUX拉低并向P0端口写入“1”控制信号。有效时,下面的缓冲区被打开,外部数据被读入内部总线。
2. P2 内部结构 2.1. P2口作为普通I/O口使用:CPU发送控制电平“0”,使多路开关MUX反转锁存器输出Q端,形成准双向口。 其功能与P1相同。 PDFcreatedpdfFactoryProtorialversion.pdffactory2.2.P2端口作为地址总线:当系统扩展片外程序存储器和扩展数据存储器且容量超过256BMOVX@DPTR指令时),CPU发出控制电平“1”导致多路开关MUX反转内部地址线。 此时P2输出高8位地址。 三。 P1口和P3口的内部结构。 端口P1的一位结构由一个输出锁存器、两个三态输入缓冲器和一个输出驱动电路——一个准双向端口组成。 P3 的内部结构 1、作为通用 I/O 口,与 P1 口类似——准双向口(W=1) PDFcreatedpdfFactoryProtorialversion.pdffactory 2、此时 P3 的第二个功能(Q=1) 、该引脚部分输入(Q=1,W=1),部分输出(Q=1,W输出) P3第二功能引脚功能定义: P3.0:RXD串口输入 P3.1:TXD串口输出 P3。 2:INT0 外部中断 0 输入 P3.3:INT1 外部中断 1 输入 P3.4:T0 定时器 0 外部输入 P3.5:T1 定时器 1 外部输入 P3.6:WR 外部写控制 P3.7:RD 外部读控制PDFcreatedpdfFactoryProtorialversion.pdffactory 总结:当P0用作I/O口时,特别是用作输出时,输出级为开漏电路,必须外接上拉电阻才能有高电平输出; 如果用作输入,必须先向相应的锁存器写入“1”,不会影响输入电平。
当CPU内部控制信号为“1”时,P0口作为地址/数据总线。 此时P0口不能再作为I/O口使用。 P1、P2、P3口都是双向口,内部没有太大区别。 ,但使用功能不同。 P1 端口是用户专用端口,具有通用输入/输出功能,每一位都可以独立设置为输入或输出。 当输出模式转变为输入模式时,在进入输入操作之前必须对该位锁存器写入“1”。 P2口是准双向I/O口。 连接外部设备时,可作为扩展系统的地址总线,输出高8位地址,与P0口共同组成16位地址总线。 对于8031来说,P2口一般只作为地址总线,并不作为I/O直接连接外部设备。 下一课将是有关 IO 操作的动手操作。 最简单的就是控制LED和KEY。 一定要在理论学习上下功夫。 。 。 PDF创建的pdfFactoryProTrialversion.pdffactory