Ⅰ 51单片机P0口分时复用原理是什么啊急需解答啊
下图为采用74LS244作为扩展输入、74LS273作为扩展输出的简单I/O口扩展。
1:74LS244为8缓冲线驱动器(三态输出),为低电平有效的使能端。即G1G2低电平是数据输入单片机,G1G2高电平时244输出为高阻态。
2:74LS273为8D触发器,为低电平有效的清除端。当为0时,输出全为0且与其它输入端无关;CP端是时钟信号,当CP由低电平向高电平跳变时刻,D端输入数据传送到Q输出端。
3:图中74ls273可以换成74ls373、74ls573等锁存器,这样就就不必利用脉冲来输出数据,373的LE端为低时输出跟随输入变化,为1是输出口锁存。
4:你还可以对图稍加改动,WRRDP2.0就只要一个就可以了,或者用一个反相器只需要一个IO口来作为控制端就好了。若还闲这样扩展不够用,可用两片373扩展输出,两片244扩展输入。
5:51单片机选用这些74系列芯片是ls和hc都可以用。但若你用3.3V的久必须用HC系列的74芯片了。
我有个我实际利用的例子,需要的话可以联系我
Ⅱ 51单片机的分时复用
51单片机
的分时复用51单片机的分时复用功能,最直接的就是MOVX指令,用这个指令就是在分时复用P0口,执行:MOVX
A,@DPTR,那么首先要送地址A0~A7给P0口,ALE有效,锁存在373上,再将这个地址的数据从P0口读入传给A。
Ⅲ 若总线分时复用型单片机读取外部并行RAM芯片的数据。一般需要用到单片机哪些
若总线分时复用型单片机读取外部并行RAM芯片的数据。
一般需要用到单片机哪些?
P0、P2 并行口;
ALE、RD 控制线。
Ⅳ 单片机的分时复用是如何实现的
P0=0x00; P0=0xff;这样在第一个周期中P0全为低电平,在第二个周期中全为高电平,分时复用了。 1楼正确。使用373活着是573一类的芯片。
Ⅳ 51单片机对外扩展时,为实现po扣地址/数据的分时复用,需要外接什么器件
P0在前一个时刻输出地址的低8位,然后由ALE信号将它们锁存到外面的逻辑芯片(例如74LS245之类)里,之后再从P0输出或输入数据,就实现了分时复用。 在这两个期间,地址的高8位,也就是P2口的信号
Ⅵ 单片机分时复用程序如何区分
如果数码管较多,可以用一个数码管专门显示序号,如果数码管数量刚好够,可以采用一路正常显示,另一路闪烁的方法加以区分。也可以分4次显示,第一次显示序号1,然后再显示一号数据,再显示序号2,接着显示二号数据。还可以用一些特殊办法,如已知小数点位置或没有小数点,在不影响正确读数的情况下把一回路的数据多加一个小数点,如4.54,显示为"4.54.",或454显示为"454.",而另一回路正常显示。,当然还有很多办法,如增加一个发光二极管或一个蜂鸣器,显示一号数据时发光二极管亮或蜂鸣器响,而显示二号数据时不亮不响.
Ⅶ 80c51单片机p0口地址数据分时复用如何实现的
P0在前一个时刻输出地址的低8位,然后由ALE信号将它们锁存到外面的逻辑芯片(例如74LS245之类)里,之后再从P0输出或输入数据,就实现了分时复用。
在这两个期间,地址的高8位,也就是P2口的信号是不变的,并且ALE在后一半的时候也是不变的。这样的话,之前输出的地址低8位被ALE锁存到外面的逻辑芯片里了。
因此不管总线上的信号如何变,只要ALE不变,那么逻辑芯片的输出就是不变的,因此此时的P0口就可以执行别的任务了。
(7)单片机分时复用扩展阅读:
单片机的分时复用:
首先,具有分时复用的端口只有P0口,而在使用分时复用功能时,是只对单片机访问外部存储器的时候来说的,其他时候都是普通IO口。
单片机在访问外部存储器的时候,P0口首先是作为低8位的地址数据线输出地址信号,外接锁存器。然后,74LS373或者245一类的锁存器将其锁存后,P0口再输出数据或者是写入数据。
这个就是P0口的双向8位数据口和低8位地址输出口的复用,分时就是先地址后数据。
Ⅷ 51单片机IO口的分时复用应用问题
可以复用,但是按键的时候灯是亮的。
复用方法有点类似动态显示扫描,读取按键之前,把P0.1置成高电平,即关灯,延时一点时间,读按键。读完按键,恢复显示内容。
由于按键读取不需要很频繁,比如说10ms才读一次,那么显示偶尔关一小会,比如说10us,肉眼感觉不到显示闪烁。
Ⅸ 求助:51单片机如何实现两个串口分时复用的
是一个单片机,要接成两个串口吗?
那只好用一个模拟开关,来切换两个串口。但实际上是一个串口,需要单片机分时来使用两个串口。这需要有严格的通信协议,编写程序要按这个协议,否则,两个串口在时间上会出现冲突,或不能正常通信,或丢失数据。
STC单片机,就有这种类型的,外部引脚是两个串口,即两组RXD,TXD引脚。内部还是一个UART,但两个串口的切换是在内部完成的,外部用起来就方便多了。
STC单片机还有内部有两个独立串口的,这样,用起来就省事多了,两个独立串口,互相不影响。