欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 60S倒計時,數碼管顯示 [打印本頁]

作者: jubaolun    時間: 2017-10-19 13:58
標題: 60S倒計時,數碼管顯示
給別人弄的60S倒計時,數碼管顯示,需要的看看。
#include<reg51.h>

#define uint unsigned int
#define uchar unsigned char

sbit P2_2 = P2^2;
sbit P2_3 = P2^3;

//sbit dula=P2^6;
//sbit wela=P2^7;
sbit beep=P1^4;
sbit start_key=P3^2;

static unsigned char second=60;
//uchar j,k,a1,a0,s=60;
uint m;
//uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
//                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,//數碼管
                        0xf8,0x80,0x90};
//////////////////////////////////////
void delay(uint nms)
{
        uint i,j;
  for(i=nms;i>0;i--)
    for(j=125;j>0;j--);
}

//////////////////////////////////
void display()
{        
         P0=table[second/10];
   P2_2 = 0;
   delay(5);
   P2_2 = 1;

    P0=table[second%10];
   P2_3 = 0;
   delay(5);
   P2_3 = 1;

}

///////////////////////////////////////////
void Timer0Init(void)                //50毫秒@11.0592MHz
{
//        AUXR &= 0x7F;                //定時器時鐘12T模式
        TMOD &= 0xF0;                //設置定時器模式
        TMOD |= 0x01;                //設置定時器模式
        TL0 = 0x00;                //設置定時初值
        TH0 = 0x4C;                //設置定時初值
        EA=1;
        ET0=1;
        TR0=1;
}
///////////////////////////////////////////
void main()
{
        uchar a;
        Timer0Init();
        while(1)
        {
                key_scan();
                for(a=100;a>0;a--)
           {
                        display();
               
           
                }
           if(second==0)
                {
                        TR0=0;//時間到,定時器關閉
                        beep=0;//蜂
                        delay(300);
                        beep=1;//蜂
                }
        }
}
/////////////////////////////////////////////////
void timer0() interrupt 1
{
        
        TL0 = 0x00;                //設置定時初值
        TH0 = 0x4C;                //設置定時初值
        m++;
        if(m==20)
        {        m=0;
                second--;
        }
}






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