您的位置 首页 知识

为什么89C51单片机的P0-P3口进行输入时要设置为1

为什么89C51单片机的P0-P3口进行输入时要设置为1-89C51单片机的P0~P3口不是标准意义的双向口 ,他只是准双向口,你可以对照着P0口的结构图看这段话,向端口写1,就是向锁存器写1,也就是让其口输出FF,为什么,是这样的

89C51单片机的P0~P3口不是规范含义的双向口 ,他仅仅准双向口,你能够对照着P0口的结构图看这段话,向端口写1,便是向锁存器写1,也便是让其口输出FF,为什么,是这样的,给锁存器写1,那么锁存器的反向端就输出0,那么和它相接的MOS管也就在截止状况,也便是呈高阻态,这样P0口上数据就会从读引脚的三态缓冲器上正确的输入,假如不写1,那么锁存器前次锁存的或许为0,那么反向端有或许呈现1,这样和反向端相接的MOS管就倒通,也便是直接拉到地,那么不论你P0口上输入什么信号都会拉成低电平,输入就错了要对其置1,不然若前一位为低电平,后一位输入的电平为高则MOS管拉不起来导致犯错。而双向口则不需要做此动作,由于双向口有悬浮态。准双向口只能有用的读取0,而对1则是选用读取非零的方法,便是读入的时分要先向接口上写1,然后再读。真实的双向口正如其名,便是真实的双向io不需要任何预操作可直接读入读出

对照MCS-51的各通道结构:

为什么89C51单片机的P0-P3口进行输入时要设置为1

为什么89C51单片机的P0-P3口进行输入时要设置为1

为什么89C51单片机的P0-P3口进行输入时要设置为1

为什么89C51单片机的P0-P3口进行输入时要设置为1

I/O口有三种操作方法:输出数据方法,读端口数据方法,读端口引脚方法

输出数据方法:

只需一条数据操作指令就能够把输出数据写入P0~3的端口锁存器,然后经过输出驱动器送到端口引脚。

eg. MOV P0, A

MOV P0, #data

读端口数据方法:

是一种仅对锁存器中数据进行读入的操作方法,读入的这个数据并非端口引脚输入的数据。CPU只需一条传送指令就能够把端口锁存器中的数绝读入累加器A或内部RAM中。

eg. MOV A, P1

MOV R1, P1

读端口引脚方法:

从端口引脚线上读入信息。CPU首要有必要将欲读端口引脚所对应的锁存器置位,以便驱动T2管(其他端口的T管)截止;然后翻开输入三态缓冲器,使相应端口引脚上的信号输入MCS-51内部数据总线。所以,要用两条指令来完结读端口引脚。

eg. MOV P1, #0FH

MOV A, P1 ; 先使P1口低四方位位,然后读P1端口第四位引脚线信号送往A。
来历;21ic

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/343910.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部