P3端口有P3.0~P3.78个引脚,P3端口可作为I/O接口,还可以用于其他方面。P3端口每个引脚的内部电路结构都相同,其内部电路结构如图2-11所示。
1.当P3端口用作I/O接口时
如果要将P3端口用作I/O接口,应让与非门的选择输出功能端为“1”,以开通与非门。
当将P3端口用作输出端口时,给锁存器的CL端送写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q端输出,再通过与非门和场效应晶体管从P3端口引脚输出。
当将P3端口用作输入端口时,应先通过内部总线向锁存器写“1”,让Q=1,场效应晶体管截止,P3端口输入的信号就可以通过缓冲器、输入三态门送到内部总线。
图2-11 P3端口内部电路结构
2.当P3端口用作第二功能时
P3端口用作第二功能(又称复用功能)时,实际上也是在该端口输入或输出信号,只不过输入/输出的是一些特殊功能的信号。所以当P3端口用作第二功能时,其内部电路的工作原理与用作I/O接口时是一样的,在用作输入功能时,端口的锁存器同样要先置“1”。
P3端口8个引脚的第二功能详见表2-1。例如P3.2引脚用作第二功能时,该端口可输入由外部设备送到的中断请求信号,该信号通过缓冲器、输入三态门送到内部总线。(www.xing528.com)
表2-1 MCS-51系列单片机I/O端口的第二功能
P3端口除了可以接收外界的输入信号外,还可以接收内部的替代输入功能端送来的信号,该信号通过输入三态门送到内部总线。
总之,P0、P1、P2和P3端口的功能是:都可以作输入或输出端口;P0、P2、P3端口具有第二功能,各端口的第二功能见表2-1。例如,表中说明P0端口的第二功能可以用作低8位地址总线/数据总线,P2端口可用作高8位地址总线,P3.0端口可用作串行数据接收端。
【例2-2】 P1端口在输出转输入操作时的软件编程方法。解答:汇编:MOV P1,#23H C51:P1=0x23;//P1端口作输出端口使用
MOV P1,#0FFH P1=0xff;//先将P1端口置“FF”
MOV A,P1 ACC=P1;//P1端口由输出转输入小提示
在实际应用中P0~P3端口均可作为双向通用I/O接口使用,但当某一端口既作输入又作输出使用时,在输出转输入操作时应先给该端口写“1”,然后再读。若端口只作输入端口使用,则读数时不必再向端口先写“1”。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。