当前位置:首页 > 单片机 > 单片机
[导读] AT89C51(与MCS-51兼容)单片机的串行口在方式0工作状态下,使用移位寄存器芯片可以扩展多个8位并行I/O口。在LED点阵显示屏应用系统中,一般都采用数据同步移位输出方式,并使用移位寄存器芯片(如74LS

AT89C51(与MCS-51兼容)单片机的串行口在方式0工作状态下,使用移位寄存器芯片可以扩展多个8位并行I/O口。在LED点阵显示屏应用系统中,一般都采用数据同步移位输出方式,并使用移位寄存器芯片(如74LS595)扩展并行I/O口驱动LED点阵显示。LED 点阵显示采用扫描方式,为不产生闪烁感,每秒需要传送50屏点阵显示数据,因此有大量的数据要通过同步移位的方式送到显示驱动电路部分,这就要求单片机能够快速地输出数据。AT89C51单片机的串行口在方式0工作状态下,数据以fosc/12的波特率输出,1个字节数据写入SBUF后,需检查中断标志位 TI是否为“1”并清“0”TI或延时几个机器周期后才能继续写入了一个数据,输出速度慢。在LED点阵显示屏应用系统中,系统与PC机之间的通讯需要使用单片机的串行口,显示数据的同步移位输出口只有另外扩展。本文介绍的高速串行同步移位输出口(以下简称扩展串行口)电路,采用模块化设计,给出基于 TTL和PLD两种电路的实现方案,波特率提高到fosc,数据输出不需要等待或延时。


一、扩展串行口与单片机的连接

扩展串行口电路框图如图1所示。与并行存储器芯片类似,扩展串行口被视为一个外部RAM地址单元,直接挂接在AT89C51的外部数据总线上,D0~D7为数据线,CE为片选信号,WE为写脉冲信号,也是扩展串行口的输出控制信号。AT89C51 外接晶体振荡器的振荡信号经二个与非门整形后为扩展串行口提供时钟脉冲XTAL2。DAT和CLK分别是扩展串行口的数据输出端和同步移位脉冲输出端。

二、操作指令

假设AT89C51分配给扩展串行口的地址是0000H,使用MOVX@DPTR,A或MOVX@R0,A指令将数据写入扩展串行口并移位数据。下面的程序段将内部RAM数据区首址为30H的32字节数据送扩展串行口同步移位输出:
MOV P2,#00H ;设置扩展串行口地址高8位
MOV R1,#30H ;设置内部RAM数据区首址
MOV R7,#32 ;输出字节个数
LOOP:MOV A,@R1 ;从内部RAM数据区读入1字节
INC R1 ;指向内部RAM数据区下一个地址单元
MOVX @R0,A ;数据送扩展串行口输出
DJNZ R7,LOOP ;32字节未送完继续
RET

三、基于TTL电路的设计方案和工作原理

图2是用TTL电路实现的扩展串行口电路。74LS74是有预置、清零功能的双上升沿D触发器,D1~D5构成8脉冲发生器(计数器原理),74LS165是8位并行输入串行输出移位寄存器。CPU执行MOVX@R0,A(或MOVX @DPTR,A)指令时,数据被锁存在74LS165中。产生8脉冲信号的时序如图3所示。图3中,Q0~Q5分别是6个D触发器的输出端,扩展串行口片选有效(CE=0),写脉冲WE到来时,WR=0,在时钟脉冲XTAL2的上升沿触发器D0的输出Q0=0,Q0复位Q5,使Q5=1;写脉冲结束后,WR=1,则WR·Q5=1,计数器的复位端无效,计数器开始计数,同时在Q1端输出方波脉冲;第8个脉冲结束后,Q5=1,则WR·Q5=0,计数器被复位,停止计数,等待下一个写脉冲。Q1端输出的8个脉冲作为同步移位脉冲接74LS165的CLK2(15脚),同时也是扩展串行输出口的同步移位脉冲输出信号:由MOVX指令锁存在74LS165中的数据在同步移位脉冲(CLK)的作用下,从扩展串行输出口的数据端(DAT)输出。


四、基于PLD电路的设计方案

用可编程门阵列器件设计电路,可使电路简化,器件数量减少。图2中虚线框内的8脉冲发生器电路用 1片GAL16V8D就可以实现,如图4所示。XTAL2是扩展串行口时钟脉冲输入信号,WR是片选有效情况下的写脉冲信号,Q1是8脉冲输出端。根据图 3所示时序图写出Q1~Q5的逻辑表达式,下面是GAL16V8D芯片的逻辑设计示例。

AFT16V8D
NAME:ED13_U00
AUTHOR:FUHAO
DATE:04.15.1999
;1 2 3 4 5 6 7 8 9 10(pin)
CLK WR NC NC NC NC NC NC NC GND
;11 12 13 14 15 16 17 18 19 20(pin)
OE Q1 Q2 Q3 Q4 Q5 NC NC NC VCC
Q1:=/Q1*WR*/Q5
Q2:=/Q2*Q1*WR*/Q5
+Q2*/Q1*WR*/Q5
Q3:=/Q3*Q2*Q1*WR*/Q5
+Q3*/Q2*WR*/Q5
+Q3*/Q2*WR*/Q5
Q4:=/Q4*Q3*Q2*Q1*WR*/Q5
+Q4*/Q3*WR*/Q5
+Q4*/Q2*WR*/Q5
+Q4*/Q1*WR*/Q5
Q5:=/Q5*Q4*Q3*Q2*Q1*WR
+Q5*/Q4*WR
+Q5*/Q3*WR
+Q5*/Q2*WR
+Q5*/Q1*WR
DESCRIPTION

结束语

本文介绍的单片机扩展高速串行同步移位输出口的方法,以及给出的基于TTL和PLD两种电路的实现方案,在LED点阵显示屏系统中都已得到成功的应用。扩展串行口采用模块化设计,很容易移植到其他应用系统中。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

在单片机的世界里,“字节”(Byte)是一个贯穿始终的核心概念。从存储数据到执行指令,从变量定义到外设通信,字节无处不在。很多初学者在学习单片机时,往往更关注复杂的程序逻辑和外设驱动,却忽略了字节这个基础知识点,导致在后...

关键字: 单片机 字节

在单片机的数字逻辑中,我们通常最关注的是高电平和低电平两种状态,它们构成了二进制数字世界的基础。然而,除了这两种状态之外,还有一种至关重要但常常被忽视的状态——高阻态(High Impedance State)。高阻态就...

关键字: 单片机 高阻态

对于PIC入门者来说,不需要盲目追求高端开发板,一块功能均衡、资料丰富的入门款就能满足需求。比如Microchip官方推出的PIC16F84A开发板,它搭载经典的8位PIC内核,引脚布局清晰,自带LED、按键等基础外设,...

关键字: PIC 单片机

该低功耗器件支持5V运行,在实现高性能的同时,能有效保障系统简洁性与成本效益

关键字: MCU 单片机 工业自动化

CH558T 采用 BASIC-52 系统,并具备蓝牙连接功能。CH558T 的运行频率为 48 MHz,拥有 4KB 的 xRAM,足以满足常规应用需求。

关键字: 单片机 BASIC-52 系统 CH558T

RGB显示屏凭借高分辨率、真彩色显示优势,在工业控制、智能终端、消费电子等领域应用广泛。裸屏RGB显示屏无内置驱动电路,需搭配专用LCD驱动芯片才能与单片机协同工作,其核心作用是将单片机输出的图像数据转换为屏幕可识别的R...

关键字: 显示屏 驱动芯片 单片机

在嵌入式系统开发中,单片机(MCU)作为控制核心,广泛应用于工业自动化、智能家居等领域。然而,当需要控制继电器或电磁阀等大功率负载时,直接连接单片机引脚往往会导致系统故障甚至硬件损坏。

关键字: 单片机 MCU

在嵌入式系统领域,单片机作为核心控制单元,其软硬件结合机制是理解电子设备运行逻辑的关键。

关键字: 单片机 CPU‌

物联网与智能控制蓬勃发展,温度传感器作为感知环境温度变化的关键元件,广泛应用于工业生产、智能家居、医疗设备等众多领域。而单片机凭借其强大的控制能力和灵活的编程特性,成为处理温度传感器数据的理想平台。下面将深入剖析单片机程...

关键字: 单片机 温度传感器

在医疗科技飞速发展的当下,便携式医疗设备以其便捷、高效的特点,逐渐成为人们日常健康管理的重要工具。其中,便携式心率监测仪凭借其实时监测心率、为健康状况提供关键数据的功能,受到了广泛关注。而单片机程序开发作为便携式心率监测...

关键字: 单片机 医疗设备
关闭