80c51单片机p0口地址数据分时复用如何实现的

如题所述

P0在前一个时刻输出地址的低8位,然后由ALE信号将它们锁存到外面的逻辑芯片(例如74LS245之类)里,之后再从P0输出或输入数据,就实现了分时复用。

在这两个期间,地址的高8位,也就是P2口的信号是不变的,并且ALE在后一半的时候也是不变的。这样的话,之前输出的地址低8位被ALE锁存到外面的逻辑芯片里了。

因此不管总线上的信号如何变,只要ALE不变,那么逻辑芯片的输出就是不变的,因此此时的P0口就可以执行别的任务了。

扩展资料:

单片机的分时复用:

首先,具有分时复用的端口只有P0口,而在使用分时复用功能时,是只对单片机访问外部存储器的时候来说的,其他时候都是普通IO口。

单片机在访问外部存储器的时候,P0口首先是作为低8位的地址数据线输出地址信号,外接锁存器。然后,74LS373或者245一类的锁存器将其锁存后,P0口再输出数据或者是写入数据。

这个就是P0口的双向8位数据口和低8位地址输出口的复用,分时就是先地址后数据。

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-20
P0在前一个时刻输出地址的低8位,然后由ALE信号将它们锁存到外面的逻辑芯片(例如74LS245之类)里,之后再从P0输出或输入数据,就实现了分时复用.
在这两个期间,地址的高8位,也就是P2口的信号是不变的,并且ALE在后一半的时候也是不变的.这样的话,之前输出的地址低8位被ALE锁存到外面的逻辑芯片里了,因此不管总线上的信号如何变,只要ALE不变,那么逻辑芯片的输出就是不变的,因此此时的P0口就可以干别的了.
当然,外面的不一定都是逻辑芯片,还可以是其它的东东.本回答被提问者采纳
第2个回答  2011-12-20
这个基本上可以说是自动的
从汇编程序上看,如果当前单片机执行的程序是读写ROM活着RAM的话,那么P0口首先输出地址信号,然后ALE引脚会发出锁存信号,这样P0就是地址线;在随后的过程中ALE的信号不变,P0口会读取活着写出数据,此时就是数据线了。
其实无论地址还是数据,都是逻辑电信号的,我这么说你明白么?
第3个回答  2011-12-21
用KEILC的话,你就不用这么详细了解底层运行了,
输个命令就OK了

80c51单片机p0口地址数据分时复用如何实现的
P0在前一个时刻输出地址的低8位,然后由ALE信号将它们锁存到外面的逻辑芯片(例如74LS245之类)里,之后再从P0输出或输入数据,就实现了分时复用。在这两个期间,地址的高8位,也就是P2口的信号是不变的,并且ALE在后一半的时候也是不变的。这样的话,之前输出的地址低8位被ALE锁存到外面的逻辑芯片...

如何用C实现单片机P0口分时复用
如:P0=0x00;P0=0xff;这样在第一个周期中P0全为低电平,在第二个周期中全为高电平,分时复用了。

8051单片机能分时传送地址信号和数据的端口是
8051单片机能分时传送地址信号和数据的端口是 P0 口,地址信号要经过373(273或573等)锁存器锁存。

C51单片机笔记(单片机的基本结构与引脚)
并行口引脚:P0口,P1口,P2口,P3口。P0口在扩展存储器及I\/O接口时,用作低8位地址总线及数据总线的分时复用端口,也可作为通用I\/O口。P1口用作通用I\/O输入。P2口在扩展外部存储器及I\/O口时,用作高8位地址总线输出高8位地址,也可作为普通I\/O使用。P3口用作通用的I\/O口,同时还提供第...

单片机系统扩展时,分时复用作为8条数据线和低8位地址线的是哪一个并行...
可以有两作用1.为了分时复用,比如P0口,可以作为地址低8位的地址线,也可以作为数据线8位,当要作为数据线使用之前,就需要有ALE信号控制锁存器将地址信号锁存;2.信号要有效,则先要保持一定的时间,并不是只有边沿的触发,所以需要锁存器来达到保持的目的(这是数电里知识)51单片机是对所有兼容...

8051的四个端口是什么?2个中断引脚是什么?
(1)P0口为双向8位三态I\/O口,它既可作为通用I\/O口,又可作为外部扩展时的数据总线及低8位地址总线的分时复用口.作为通用I\/O口时,输出数据可以得到锁存,不需外接专用锁存器;输入数据可以得到缓冲,增加了数据输入的可靠性.每个引脚可驱动8个TTL负载.(2)P1口为8位准双向I\/O口,内部具有上拉电阻,...

MCS-51单片机有多少根I\/O线?它们和单片机的外部总线有什么关系?_百度...
共4*8=32条IO P0,P1,P2,P3。P0作为外部地址线|数据线(在PSEN的控制线分时复用),P2作为高位地址线,P1,P3与外部总线无关,只作为标准IO和复用功能使用,但是有些单片机厂家,做了些改变,具体情况要看单片机的生产厂商和型号。

P0口作为通用I\/O口时,在软、硬件设计时应注意什么
P0口作为地址线总线低八位时,是漏极开路的双向I\/O口,当作为普通I\/O口时是准双向口,需要加上上拉电阻,当作为普通I\/O口输入时,应先向端口输出锁存器写1,P0作为地址总线和数据总线时,分时复用端口。

如何把24H写进P0和P2?
这时,P0作为数据\/地址分时复用端口,P0口先输出外部存储器的低8位地址,并在外部锁存,而后再输出\/读入数据。在16位寻址时,P2口输出外部存储器的高8位地址。当P0口和P2口用作数据\/地址总线时,它们不能再作为通用I\/O口,也就是这时它们不能作数据输出,用作输出时所输出的数据也只能是很短的时间...

单片机外扩RAM和ROM时,他们各起什么
P0口内部没有上拉电阻,可以用做16位地址的低8位;P1是一般的IO口;P2口可以用做16位地址的高8位;P3有第二功能,当单片机外扩RAM和ROM时主要是用到读、写两个管脚

相似回答