任意时间倒计时加警报最后优选资料min
- 格式:doc
- 大小:15.33 KB
- 文档页数:12
#define uchar unsigned char
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; uchar num,num0,benum,flag;
char shi=23,fen=59,miao=59;
sbit k1=P3^0;
sbit k2=P3^1;
sbit k3=P3^2;
sbit k4=P3^3;
sbit k5=P3^4;
sbit k6=P3^5;
sbit k7=P3^6;
sbit k8=P3^7;
sbit beef=P1^5;
sbit deadline=P1^4;
sbit dishurry=P1^3;
sbit stop=P1^2;
sbit play=P1^1;
void delay(uchar z)
{ //延时子程序
uchar x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
显示子程序 void display() // {
uchar sshi,sge,fshi,fge,mshi,mge; sshi=shi/10;sge=shi_x0010_;
fshi=fen/10;fge=fen_x0010_;
mshi=miao/10;mge=miao_x0010_;
P0=table[sshi];P2=0x00;delay(1);P0=0; P0=table[sge];P2=0x04;delay(1);P0=0; P0=table[10];P2=0x08;delay(1);P0=0; P0=table[fshi];P2=0x0c;delay(1);P0=0; P0=table[fge];P2=0x10;delay(1);P0=0; P0=table[10];P2=0x14;delay(1);P0=0; P0=table[mshi];P2=0x18;delay(1);P0=0; P0=table[mge];P2=0x1c;delay(1);P0=0; }
void set() 设置子程序 //
{
if(flag==1)
{
{
delay(5);
if(k1==0)
{
shi++;
if(shi==24) shi=0; while(!k1); }
}
if(k2==0) {
delay(5);
if(k2==0) {
fen++;
if(fen==60) fen=0; while(!k2); }
}
{
delay(5);
if(k3==0) {
miao++;
if(miao==60) miao=0; while(!k3); }
}
if(k5==0)
{
delay(5);
if(k5==0) {
shi--;
if(shi==-1) shi=23; while(!k5); }
}
{
delay(5);
if(k6==0) {
fen--;
if(fen==-1) fen=59;
while(!k6); }
}
if(k7==0)
{
delay(5);
if(k7==0) {
miao--;
if(miao==-1) miao=59; while(!k7); }
}
}
if(k4==0)
{
delay(5);
if(k4==0)
TR0=0;
flag=1;
while(!k4);
}
if(k8==0)
{
delay(5);
if(k8==0)
{
TR0=1;
flag=0;
}
while(!k8);
}
}
void alarm() //报警子程序{
if(shi==0) {
if(fen==2) {
if(miao==0) {
TR1=1; benum=20; }
}
if(fen==1) {
if(miao==30) benum=10; }
if(fen==1) {
if(miao==0) benum=5;
}
if(fen==0) {
if(miao==30)
benum=2;
}
if(fen==0)
{
if(miao==0)
{
TR1=0;
TR0=0;
beef=0;
deadline=0;
dishurry=1;
}
}
}
}
解除 void secure() // {
if(stop==0)
{
delay(5);
if(stop==0)
{
TR0=0;
TR1=0;
beef=1;
deadline=1;
dishurry=0;
}
while(!stop);
}
if(play==0) 继续 // {
delay(5);
if(play==0)
{
TR0=1;
TR1=1;
if(shi==0)
if(fen==0)
if(miao==0)
{
TR0=0;
TR1=0;