历史上的今天
返回首页

历史上的今天

今天是:2025年08月02日(星期六)

2020年08月02日 | 8051单片机(STC89C52)两个倒计时器异步计数

2020-08-02 来源:eefocus

#include

 

void delay()//用定时器0实现5ms精准定时

{

TMOD = 0x01;

TH0 = 0xEA;

TL0 = 0x84;//65536 - 5000 = 60036

 

TF0 = 0;//置溢出标志位为0

TR0 = 1;//开启定时器0

while(TF0 == 0);

TR0 = 0;//暂停定时器0

}

 

void disp_digit(int d, int r)

{

unsigned char code DIG_CODE[10] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};

//第一个倒计时

//显示个位数

P2 = 0;// P2 = 0 -> (P24, P23, P22) = (0, 0, 0) -> 右数第一个数字点亮

P0 = DIG_CODE[d % 10];

delay();//5ms精准定时

//显示十位数

P2 = 1 << 2;//P2 = 0000 0100 -> (P24, P23, P22) = (0, 0, 1) -> 右数第二个数字点亮

P0 = DIG_CODE[d / 10];

delay();//5ms精准定时

//第二个倒计时

//显示个位数

P2 = 6 << 2;//P2 = 0001 1000 -> (P24, P23, P22) = (1, 1, 0) -> 右数第七个数字点亮

P0 = DIG_CODE[r % 10];

delay();//5ms精准定时

//显示十位数

P2 = 7 << 2;//P2 = 0001 1100 -> (P24, P23, P22) = (1, 1, 1) -> 右数第八个数字点亮

P0 = DIG_CODE[r / 10];

delay();//5ms精准定时

}

 

int main()

{

int i;

int sec1 = 15, sec2 = 25;

while(1)

{

if(sec1 == -1)

{

sec1 = 15;

}

if(sec2 == -1)

{

sec2 = 25;

}

for(i = 0; i < 50; i++)

{

disp_digit(sec1, sec2);//花费大约20ms

}

sec1 --;

sec2 --;

}

return 0;

}


推荐阅读

史海拾趣

赛微(Cellwise)公司的发展小趣事

作为高端集成电路晶圆代工生产商,赛微在晶圆代工技术方面取得了重要突破。公司不断引进先进的生产设备和工艺技术,加强研发投入和人才培养,成功打造了一系列具有国际竞争力的晶圆代工生产线。同时,公司还积极拓展新的应用领域和市场,为客户提供更加全面、优质的服务。

Electro-Mech Components Inc公司的发展小趣事

自1976年起,EMC在蒂华纳不仅为自身运营制造工厂,还开始为其他美国公司,如GM/Hughes Aircraft和Daneher Joslyn Sunbank Electronics提供制造服务。这种深度合作模式不仅增强了EMC的生产能力,也使其能够接触到更多的先进技术和管理经验。通过与这些美国公司的合作,EMC的产品质量和生产效率都得到了显著提升,同时也为公司的全球化战略打下了坚实基础。

Danaher Corporation公司的发展小趣事

丹纳赫集团起源于1984年,由Steven Rales和Mitchell Rales兄弟二人创立。他们的愿景是建立一个致力于持续改善并提升客户满意度的制造公司。名字“Dana”源自古老的凯尔特语,寓意奔腾不息的精神和不断改善的品质。起初,丹纳赫集团并未直接涉足电子行业,但随着公司的发展,逐渐将业务范围扩展至包括电子设备和技术的领域。

EPT公司的发展小趣事

随着市场需求的不断变化,EPT意识到传统生产线已无法满足高容量、高耗能电池的生产需求。因此,公司投入巨资引进了全自动生产线,并采用了特殊的电池成型技术。这一举措不仅提高了生产效率,还保证了产品的稳定性和一致性。同时,EPT还针对不同类型的电池设计了专门的生产线,以满足市场的多样化需求。这一转型使得EPT在电子行业中脱颖而出,赢得了众多客户的青睐。

迈翔科技(COILMX)公司的发展小趣事

迈翔科技(COILMX)的创始人看到了电子行业,特别是电感器市场的巨大潜力。1996年,公司正式成立,初期主要专注于SMD电感的设计、制造和销售。公司从香港起步,逐步在深圳设立工厂,引进先进的生产设备和技术,为未来的发展奠定了坚实的基础。

Hartmann Codier GmbH公司的发展小趣事

迈翔科技(COILMX)的创始人看到了电子行业,特别是电感器市场的巨大潜力。1996年,公司正式成立,初期主要专注于SMD电感的设计、制造和销售。公司从香港起步,逐步在深圳设立工厂,引进先进的生产设备和技术,为未来的发展奠定了坚实的基础。

问答坊 | AI 解惑

汽车的心脏—发动机

对于人体来说,心脏所占的重要位置不用细说,它是人体的动力器官,由它产生血液循环,从而保证了机体内环境的相对恒定和新陈代谢的正常进行。发动机在汽车上的重要性,和心脏在人体上的重要性是同等的。发动机是汽车的动力源,是汽车的“心脏”部位 ...…

查看全部问答>

普及:事件触发式编程和事件调度简介

计算机处理的是客观世界的具体任务,我们把它抽象成事件,程序员关注的也是事件,用户关注的也是事件,因此我们需要事件触发式编程。传统上,在VC、VB之类的可视化编程工具支持下,我们可以实现事件触发式编程,比如往桌面上放置一个按钮,我们只需 ...…

查看全部问答>

传个指纹识别芯片的资料,AES3400这玩意儿不好找的哦

传个指纹识别芯片的资料,AES3400这玩意儿不好找的哦, 发帖赚点积分换板子   [ 本帖最后由 jialaolian 于 2010-7-18 12:58 编辑 ]…

查看全部问答>

mtdparts=mtd-id如何使用

我的uboot用的是1.3.3, bootargs=console=ttyCPM0,19200 root=/dev/mtdblock6 mtdparts=physmap-flash.0:384k,128k,128k,1792k,1792k,30720k,- 文件系统用的是squashfs 1请问是不是必须要做flash的分区,也就是physmap.c必须设置分区后,才能这 ...…

查看全部问答>

问一个低级问题,谢谢赐教!

sizeof(int)得到的值是由硬件决定的还是由OS决定的?…

查看全部问答>

ARM 的ads1.2问题

  我刚学听说要用ads1.2可是我没有license谁能给一个。是不是必须用这个编译…

查看全部问答>

usb转串口下载

一直以来的困扰。弱弱的问一下,为什么要用usb转串口下载,而不用usb直接下载呢?是电平神马的不一样么?…

查看全部问答>

大学生这样,真是悲哀啊~

今天在一个群里看到的,好像是论坛里的群,我不敢下什么定论了,反正我在群里被人家的气势压下去了,不知道大家怎么看。 我只想感叹一下这些浮躁的大学生们!…

查看全部问答>

【转】冀勇庆:华为老员工看华为(二):如何找到国际化人才

本帖最后由 jameswangsynnex 于 2015-3-3 20:04 编辑 IT老记冀勇庆:一家在海外没有任何资源的公司,却需要开拓海外的运营商市场,这注定是一个非常艰辛的过程。2005年,我去欧洲采访华为的时候曾经听到过一种说法:要倒下五拨人,才能起来一片市 ...…

查看全部问答>

南华大学黄智伟 2003~2011赛前元器件清单与赛题对比

本帖最后由 paulhyde 于 2014-9-15 04:02 编辑 南华大学黄智伟 2003~2011赛前元器件清单与赛题对比 根据全国大学生电子设计竞赛组委会专家组的安排,通常会在赛前一周在网上公布本次全国大学生电子设计竞赛需要的基本仪器和主要元器件清单, ...…

查看全部问答>