stc电子表c51程序V2.0 作者: 时间:2016-11-29 来源:网络 加入技术交流群 扫码加入和技术大咖面对面交流海量资料库查询 收藏 //.....................................................................................void shezhi()//时间设置函数{while(1){ ss=shi/10;gs=shi%10; sf=fen/10;gf=fen%10; sm=miao/10;gm=miao%10;shijian();if(a2==0){delay(100);if(a2==0){while(a2==0);delay(20);break;}}if(a1==0){delay(100);while(a1==0);delay(20);s1++;}if(s1==3){s1=0;}if(s1==1){weiduan(0,10);delay(5);weiduan(1,10);delay(5);if(a3==0){delay(20);if(a3==0){shi++;}while(a3==0);delay(100);}if(a4==0){delay(20);if(a4==0){shi--;}while(a4==0);delay(100);}}if(s1==2){weiduan(2,10);delay(5);weiduan(3,10);delay(5);if(a3==0){delay(20);if(a3==0){fen++;}while(a3==0);delay(100);}if(a4==0){delay(20);if(a4==0){fen--;}while(a4==0);delay(100);}}if(s1==0){weiduan(4,10);delay(5);weiduan(5,10);delay(5);if(a3==0){delay(20);if(a3==0){miao++;}while(a3==0);delay(100);}if(a4==0){delay(20);if(a4==0){miao--;}while(a4==0);delay(100);}}}}//.....................................................................................void zhongduan() interrupt 1 //定时器中断函数体{ TH0=(65535-40400)/256;TL0=(65535-40400)%256;if(e3>=60)//判断秒等于或超过60{e2++; //分钟加1e3=0;} //秒数清零if(e2>=60) //判断分钟等于或超过60{e1++; //小时加1e2=0;} //分钟数清零if(e1>=24) //判断小时等于或大于24{e1=0;} //小时数 清零d0++;//累加数shu(); //调用时间最大值限制函数} //.....................................................................................void delay(uchar d1)//延时函数{uchar t0,t1;for(t0=d1;t0>0;t0--)for(t1=110;t1>0;t1--);}//.....................................................................................void weiduan(uchar z,uchar x) //位段选择函数{ P1=num[x];dua=1;dua=0;P1=wes[z];}//.....................................................................................void shijian()//动态扫描时间显示函数 带延时{chushi();//调用时间初始化函数 delay(10);weiduan(0,ss);delay(10);weiduan(1,gs);delay(10);weiduan(2,sf);delay(10); weiduan(3,gf);delay(10);weiduan(4,sm);delay(10);weiduan(5,gm);delay(10);}//.....................................................................................void shu() //时间最大限制函数体{ if(d0>=98) //判断定时器进入 多少次{d0=0; //清除累加数miao++;} //秒数自+if(miao>=60)//判断秒等于或超过60{fen++; //分钟加1miao=0;} //秒数清零if(fen>=60) //判断分钟等于或超过60{shi++; //小时加1fen=0;} //分钟数清零if(shi>=24) //判断小时等于或大于24{shi=0;} //小时数 清零}//.....................................................................................void chushi() //时间初始化{ ss=shi/10;gs=shi%10; sf=fen/10;gf=fen%10; sm=miao/10;gm=miao%10;}//..................................................................................... 上一页 1 2 下一页
评论