秒表计时器

早过忘川 提交于 2019-12-03 23:37:38

制作一个秒表计时器,记录0-15秒时间。要求精准,可控制。

 

1.能够用按键控制秒表开始

 

2.能够用按键控制秒表停止

 

3.能够用按键控制秒表清零

 

4.使用定时器控制时间,要求精确。

 

5.使用1个数码管和多个按键实现功能

 

 

 

复制代码

#include<reg52.h>

#define LED  P0

sbit KEY1 =P1^0;

sbit KEY2 =P1^4;

unsigned int i = 0;

unsigned char n = 0;

unsigned char LED_NUM[] = {0xc0,0xf9,0xa4,0xb0,\

                           0x99,0x92,0x82,0xf8,\

                           0x80,0x90,0x88,0x83,\

                           0xc6,0xa1,0x86,0x8e};

void INT_T0(void)

{

    TMOD = 0X01; //打开定时器0 ,使用模式1定时

    TH0 = 0XFC;

    TL0    = 0X18; //初始值

    EA = 1;//打开总开关

    ET0 = 1;//打开中断T0开关

}

void main(void)

{    

    INT_T0();

    TR0 = 1; //定时功能打开

    while(1)

    {

        if(KEY1 ==0)

        {

            TR0 = 1;

        }        

        if(KEY2 ==0)

        {

            i=0;

            n=0;

 

        }            

    }

}

void time0(void) interrupt 1 

{

    TH0 = 0XFC;

    TL0    = 0X18; //初始值

    if(i < 1000)

    {

        i++;

    }

    else

    {

        LED = LED_NUM[n];

        if(n<16)

        {

            n++;

        }

        else

        {

            n=0;

        }

            i=0;        

    }

}

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!