搜索
bottom↓
回复: 19

74HC573,DS1302这些芯片的作用是什么?我初学者,望大家多多指教

[复制链接]

出0入0汤圆

发表于 2010-1-22 15:35:26 | 显示全部楼层 |阅读模式
有谁能给小弟指点下74HC573在做八段数码管显示的时候有什么作用?
DS1302在做时钟的时候有什么作用?
单片机内不是有自带的定时器么?
我用的是AT89S52

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2010-1-22 17:10:48 | 显示全部楼层
拜托大家说说好不?

出0入0汤圆

发表于 2010-1-24 00:02:11 | 显示全部楼层
你最好还是多google一下吧。。。
74HC573在做数码管时是锁存+驱动用的
1302是时钟芯片,可以直接从内部读取年月日时间,其功耗极低,用个法拉电容就能走上一年半载的
单片机你去做个万年历比较麻烦,而且精度还不好做,1302就容易了。。。

出0入0汤圆

 楼主| 发表于 2010-1-24 10:34:16 | 显示全部楼层
额~谢谢楼上的
1302可以从内部直接读取时间是指电脑内部么?
另外74HC573还不是很明白,你看我做的一个八段数码管动态显示的一个实验程序:


#include <reg52.h>
#include <intrins.h>

unsigned char hour1, hour2,hour=0;
unsigned char min1, min2,minite=0;
unsigned char sec1, sec2,second=0;
int count = 0;

unsigned char tab[10] =
{
            0x3F,/*0*/
        0x06,/*1*/
        0x5B,/*2*/
        0x4F,/*3*/
        0x66,/*4*/
        0x6D,/*5*/
        0x7D,/*6*/
        0x07,/*7*/
        0x7F,/*8*/
        0x6F,/*9*/
};

void delay(int ms)
{
        int i;

        for (i=0 ; i<ms; i++)
                        ;
}

void time(void) interrupt 1 using 1
{
        TH0=(65536-10000)/256;
        TL0=(65536-10000)%256;

        count++;
       
        if (count == 100)
        {
                count = 0;
                second++;
        }

        sec1 = tab[second/10];
        sec2 = tab[second%10];

        if (second == 60)
        {
                second = 0;
                minite++;
        }

        min1 = tab[minite/10];
        min2 = tab[minite%10];

        if (minite == 60)
        {
                minite = 0;
                hour++;
        }
       
        hour1 = tab[hour/10];
        hour2 = tab[hour%10];
}


void time1(void) interrupt 0 using 2
{
        TR0 = !TR0;
}

void main()
{
        TMOD = 0x01;
        TH0=(65536-25000)/256;
        TL0=(65536-25000)%256;
        IP = 0x80;
        EX0=1;//外部中断0设置
        IT0=1;
        EA = 1;
        ET0 = 1;
        TR0 = 1;

        hour1 = tab[1];
        hour2 = tab[2];
        min1 = tab[0];
        min2 = tab[0];
        sec1 = tab[0];
        sec2 = tab[0];

        while (1)
        {
                P2 = 0;
                P0 = hour1;
                delay(10);
                P2 = 1;
                P0 = hour2;
                delay(10);
                P2 = 2;
                P0 = 0x40;
                delay(10);
                P2 = 3;
                P0 = min1;
                delay(10);
                P2 = 4;
                P0 = min2;
                delay(10);
                P2 = 5;
                P0 = 0x40;
                delay(10);
                P2 = 6;
                P0 = sec1;
                delay(10);
                P2 = 7;
                P0 = sec2;
                delay(10);               
        }
}
       
这里不是直接用P2 = 0、1、2、3、4、5、6、7就控制了那个数码管亮么?
貌似没有用到74HC573吧?

出0入0汤圆

发表于 2010-1-25 10:25:31 | 显示全部楼层
程序是您写的.看程序573和蔼302都没有用到嘛

如果程序不是您写的,好好读懂就知道拉.

另1302, 573的运用的网上一大把, 搜搜然后实验下有问题多思考哦.

出0入0汤圆

 楼主| 发表于 2010-1-25 11:10:29 | 显示全部楼层
恩,程序是我写的。我就是想知道这样没有用573也能驱动数码管,那573的用处是什么呢?

出0入0汤圆

发表于 2010-4-10 17:30:22 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-1-30 01:20:37 | 显示全部楼层
要让一根棍子立住有什么办法呢?一是你一直扶着它,二是找一个或做一个座,把棍子插在座上。573就是这座。

出0入0汤圆

发表于 2011-1-31 00:02:08 | 显示全部楼层
我也是初学者。573能够锁存数据和驱动数码管。你的程序没有用到锁存功能。你可以看看原理图看573的11脚连哪个IO口。高电平开启,再给个低电平就锁住了。驱动数码管的话,那么不用加四个三极管驱动他了。

出0入0汤圆

发表于 2011-8-5 20:10:53 | 显示全部楼层
恩,很有帮助

出0入0汤圆

发表于 2011-8-9 11:10:02 | 显示全部楼层
有我需要的东西 谢谢了

出0入0汤圆

发表于 2011-8-9 12:11:20 | 显示全部楼层
回复【7楼】snakevip
-----------------------------------------------------------------------

比喻贴切~~说得好~!顶下

出0入0汤圆

发表于 2011-8-9 19:40:00 | 显示全部楼层
573只是驱动数码管的方法之一 用译码器也行的

出0入0汤圆

发表于 2011-8-9 20:45:02 | 显示全部楼层
回复【楼主位】xbpkid
-----------------------------------------------------------------------

主要是用在扩展I/O口的,

点击此处下载 ourdev_665959WYHLEC.PDF(文件大小:53K) (原文件名:74HC573.PDF)

出0入0汤圆

发表于 2011-8-9 20:57:29 | 显示全部楼层
你的程序是以扫描的形式显示数据的,可以直接用UNL2000系列的高压大电流达林顿晶体管阵列来进行显示,不需要用573。达林顿晶体管阵列作用就相当于一组三极管。而573是带锁存的,也就是说你把数据比如hour输入相应数码管的573后,将573的11脚设为低电平,数据会被锁存。这时你就可以不用不断地扫描来显示数字了,只要在更新数字的时候将11脚设为高电平,重新写入新的数据。573的中文PDF附在后面了,你可以看一下。BY THE WAY,我啥时候才能过审核啊。。。74HC573中文pdfourdev_665971F2CCD2.pdf(文件大小:139K) (原文件名:74HC573中文.pdf)

出0入0汤圆

发表于 2011-8-9 21:18:07 | 显示全部楼层
74hc154,159都可以的

出0入0汤圆

发表于 2011-8-9 21:53:44 | 显示全部楼层
573是锁存器啊。。。

出0入0汤圆

发表于 2011-8-10 00:38:22 | 显示全部楼层
573锁存是实现数码管动态扫描显示的。看看郭天祥的十天学会单片机就懂了。

出0入0汤圆

发表于 2011-8-10 00:54:12 | 显示全部楼层
573:
1、驱动,单片机IO无法直接驱动数码管,如果单独接,则需要三极管,而573可以实现单片机逻辑输入,而输出时给数码管提供足够的电流
2、节省IO,6位数码管,不用锁存器需要8+6=14个IO,而用锁存器就只需要8+2个,并且这8个口在不需要操作数码管时,还可与其他IC进行通讯,只需把573的控制端拉高即可。

1302:
如果单纯用51的定时器做时钟,会占用过多资源,走时不准,功耗也很大,初学做个试验玩玩还是可以的。如果用1302,该芯片可以提供稳定精确地走时,单片机只需在第一次上电时进行必要的时间设定,以后需要时间的时候只需从1302读取数据即可。1302自带长短月、闰年补偿等功能,51要想实现会灰常麻烦~掉电后只需微弱的电流即可保持精确走时~

出0入0汤圆

发表于 2012-10-8 14:07:59 | 显示全部楼层
学习了                    
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 15:12

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表