74HC573芯片探讨

74HC573官方文档:点击下载 ,之前用过74HC573锁存器,然而,最近在查看芯片手册时,发现自己对芯片工作的原理有所误读,在此,将此芯片做一探讨。

1. 74HC573

输出能直接接到CMOS,NMOS和TTL接口上。

操作电压范围:2.0v~6.0v

低输入电流:1.0uA

CMOS器件的高噪音抵抗特性,如下:

图片

当锁存使能端为高时,这些器件的输出同步;当锁存使能为低时,符合建立时间和保持时间的数据会被锁存。

  • OE:3 State output Enable Input(Active Low) (3态输出使能输入,低电平有效):使用中,一直保持为低电平。

  • LE:Latch Enable Input(锁存使能输入):当LE为低电平时,输出Q保持上一次的数据不变;高电平时,数据与输入口相同。可以充分利用此点。

  • GND,VCC:地及电源。

  • 2,3,4,5,6,7,8,9 (D0-D7): Data Inputs(数据输入)

  • 12,13,14,15,16,17, 18, 19: 3态锁存输出

2. 管脚图

图片

3. 例程

点击下载 源码 文件。

dula和wela分别接一个74HC573,所以数码管显示如下:

代码
#include <reg51.h> 

sbit dula=P2^6;        //段选信号的锁存器控制 
sbit wela=P2^7;        //位选信号的锁存器控制 

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 
                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; 
                        //0-F的码表 
void delay(unsigned int i)
{
    unsigned int m,n;
    for(m=i;m>0;m--)
        for(n=90;n>0;n--);
}

void main()
{
    unsigned char num;
    while(1)
    {
        for(num=0;num<4;num++)
        {
            P0=table[num];
            dula=1;
            dula=0;

            P0=0xfe;       //选中第一个数码管
            wela=1;
            wela=0;
            delay(1000);
        }
    }
}