|
給你看看我的程序
/*
使用定時器中斷進(jìn)行的倒計(jì)時程序。
*/
#include <STC89C5xRC.H>//單片機(jī)所有資源說明文件
#include <intrins.h>//循環(huán)移位函數(shù)所在的頭文件
#define SMG P0//數(shù)碼管接口
sbit K1=P3^4;//獨(dú)立按鍵接口
sbit K2=P3^5;//k1加,k2減,k3回零,k4開始倒計(jì)時
sbit K3=P3^6;
sbit K4=P3^7;
sbit DUAN=P2^6;//數(shù)碼管顯示段碼的鎖存
sbit WEI=P2^7;//選擇數(shù)碼管位的鎖存
sbit FMQ=P2^3;//蜂鳴器
unsigned char ZF[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,
0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};
unsigned char Wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char PLAY[8]={0,0,0,0,0,0,0,0};
unsigned char n=0,TT=0;
void Delay1ms()
{
unsigned char i, j;
_nop_();
i = 2;
j = 199;
do
{
while (--j);
} while (--i);
}
void Delay10ms()
{
unsigned char i, j;
i = 18;
j = 235;
do
{
while (--j);
} while (--i);
}
void Delay100ms()
{
unsigned char i, j, k;
_nop_();
_nop_();
i = 5;
j = 52;
k = 195;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void Timer0Init(void) //50毫秒@11.0592MHz,定時器設(shè)置
{
AUXR &= 0x7F;
TMOD &= 0xF0;
TMOD |= 0x01;
TL0 = 0x00;
TH0 = 0x4C;
EA = 1;
ET0 = 1;
TF0 = 0;
TR0 = 0;
}
void XS(void)//顯示子函數(shù)
{
unsigned char i;
for (i=0;i<8;i++)
{
SMG=Wei;
WEI=1;
WEI=0;
SMG=PLAY;
DUAN=1;
DUAN=0;
Delay1ms();
SMG=0x00;
DUAN=1;
DUAN=0;
}
}
void DISPLAY(void)
{
PLAY[5]=ZF[n/100];
PLAY[6]=ZF[(n%100)/10];
PLAY[7]=ZF[(n%10)/1];
}
void main(void)
{
unsigned char m;
bit KS=0;
Timer0Init();
while(1)
{
if (K1==0)
{
Delay10ms();
if (K1==0)
{
n=n+1;
}
for(m=0;((m<50)&&(K1==0));m++)
{
Delay10ms();
}
}
if (K2==0)
{
Delay10ms();
if (K2==0)
{
n=n-1;
}
for(m=0;((m<50)&&(K2==0));m++)
{
Delay10ms();
}
}
if (K3==0)
{
Delay10ms();
if (K3==0)
{
n=0;
}
for(m=0;((m<50)&&(K3==0));m++)
{
Delay10ms();
}
}
if (K4==0)
{
Delay10ms();
if (K4==0)
{
if (n!=0)
{
TR0=1;//打開定時器計(jì)時
}
}
for(m=0;((m<50)&&(K4==0));m++)
{
Delay10ms();
}
}
DISPLAY();
XS();
}
}
void Time0 (void) interrupt 1
{
unsigned char m;
TL0 = 0x00;
TH0 = 0x4C;
TT++;
if (TT==20)
{
n--;
if (n==0)
{
for (m=0;m<100;m++)
{
DISPLAY();
XS();
}
TR0=0;
FMQ=0;
Delay100ms();
FMQ=1;
}
TT=0;
}
}
1.jpg (55.17 KB, 下載次數(shù): 37)
下載附件
2018-10-4 07:54 上傳
2.jpg (14.81 KB, 下載次數(shù): 41)
下載附件
2018-10-4 07:54 上傳
3.jpg (11.06 KB, 下載次數(shù): 49)
下載附件
2018-10-4 07:54 上傳
|
|