找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1239|回复: 0
收起左侧

单片机数码管秒表程序

[复制链接]
ID:1013275 发表于 2022-4-18 13:24 | 显示全部楼层 |阅读模式
制作一个数码管秒表,用两个led数码管显示,最小计时单位为100ms,范围为0.1-9.9s,按下第一个功能键后开始计时,第二次按下时停止

#include <reg51.h>
unsigned char code discode1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
unsigned char code discode2[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char timer=0;
unsigned char second;
unsigned char key=0;
main()
{
        TMOD=0x01;
        ET0=1;
        EA=1;
        second=0;
        P0=discode1[second/10];
        P2=discode2[second%10];
        while(1)
        {
                if((P3&0x01)==0x00)
                {
                   key++;
                   switch(key)
                   {
                        case 1:
                                   TH0=0xee;
                                   TL0=0x00;
                                   TR0=1;
                                   break;
                        case 2:
                                TR0=0;
                                break;
                        case 3:
                                key=0;
                                second=0;
                                P0=discode1[second/10];
                                P2=discode2[second%10];
                                break;
                   }
                   while((P3&0x01)==0x00);
                }
        }
}
void int_T0() interrupt 1 using 0
{
        TR0=0;
        TH0=0xee;
        TL0=0X00;
        timer++;        
         if(timer==20)
         {
                 timer=0;
                second++;
                P0=discode1[second/10];
          P2=discode2[second%10];
         }
        if(second==99)
        {
                 TR0=0;
                second=0;
                key=2;
        }
        else
        {

                TR0=1;
        }
}

附件里面是仿真图,不含代码(自行生成hex文件)仅供参考,请自行测试,如有错误请告知: 制作LED数码管秒表.zip (40.65 KB, 下载次数: 13)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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