標(biāo)題: 單片機(jī)六位數(shù)字時(shí)鐘(可調(diào))含proteus仿真圖和源碼 [打印本頁]

作者: Agnes-wzs    時(shí)間: 2019-11-23 17:32
標(biāo)題: 單片機(jī)六位數(shù)字時(shí)鐘(可調(diào))含proteus仿真圖和源碼
#include <reg51.h>               

sbit key_hour=P1^0;
sbit key_min=P1^2;
sbit key_sec=P1^4;
sbit key_rst=P1^6;

unsigned char code tag[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned int hour,min,sec,num;

void delay(unsigned int xms);
void display();

int main()
{
        TMOD=0x01;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        TR0=1;
        EA=1;
        ET0=1;
        while(1)
        {
                display();
                if(num==20)
                {
                        sec++;
                        num=0;
                }
                if(sec==60)
                {
                        min++;
                        sec=0;
                }
                if(min==60)
                {
                        hour++;
                        min=0;
                }
                if(hour==24)
                {
                        hour=0;
                        min=0;
                        sec=0;
                }
                if(key_hour==0)
                {
                        delay(10);
                        if(key_hour==0)
                        {
                                hour++;
                                if(hour==24)        hour=0;
                        }
                        while(!key_hour);
                }
                if(key_min==0)
                {
                        delay(10);
                        if(key_min==0)
                        {
                                min++;
                                if(min==60)        min=0;
                        }
                        while(!key_min);
                }
                if(key_sec==0)
                {
                        delay(10);
                        if(key_sec==0)
                        {
                                sec++;
                                if(sec==24)        sec=0;
                        }
                        while(!key_sec);
                }
                if(key_rst==0)
                {
                        delay(10);
                        if(key_rst==0)
                        {
                                hour=0;
                                min=0;
                                sec=0;
                        }
                        while(!key_rst);
                }
        }
        return 0;
}

void display()
{
        P0=tag[hour/10];
        P3=0xfe;
        delay(1);
        P3=0xff;
        
        P0=tag[hour%10];
        P3=0xfd;
        delay(1);
        P3=0xff;
        
        P0=0x40;
        P3=0xfb;
        delay(1);
        P3=0xff;
        
        P0=tag[min/10];
        P3=0xf7;
        delay(1);
        P3=0xff;
        
        P0=tag[min%10];
        P3=0xef;
        delay(1);
        P3=0xff;
        
        P0=0x40;
        P3=0xdf;
        delay(1);
        P3=0xff;
        
        P0=tag[sec/10];
        P3=0xbf;
        delay(1);
        P3=0xff;
        
        P0=tag[sec%10];
        P3=0x7f;
        delay(1);
        P3=0xff;
}

void delay(unsigned int xms)
{
        unsigned int i,j;
        for(i=xms;i>0;i--)
                for(j=100;j>0;j--);
}

void show() interrupt 1
{
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        num++;
}

2019-11-23_173143.png (41.81 KB, 下載次數(shù): 104)

2019-11-23_173143.png

六位數(shù)字時(shí)鐘(可調(diào)).zip

85.88 KB, 下載次數(shù): 75, 下載積分: 黑幣 -5


作者: SALLA    時(shí)間: 2020-6-18 14:56
這個(gè)叫什么




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1