第1 页 #include #define uint unsigned int #define uchar unsigned char #define LED P0 // 数码管的段选 #define LIGHT P1 // 时分秒位的指示灯 #define WS P2 // 数码管的位选 sbit key1=P3^0; // 时间暂停/开始 sbit key2=P3^1; // 时间/闹钟设置 sbit key3=P3^2; // 增加 sbit key4=P3^3; // 减少 sbit alarm=P3^6; // 闹铃 uchar tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f} ; // 0-9 uchar tab_dp[10]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef} ; // 0
(带小数点) uchar data1[]={0,0,0,0,0,0} ; uchar data2[]={0,0,0,0,0,0} ; uint t,k,kk,k1,flag; uint bbh,bbm,bbs,bbh1,bbm1,bbs1; uint sec,min,hour,sec1,min1,hour1; // 定义 秒,分,时 void init(); void display(); void display_bb(); void delay( uint ); void keyscan(); void main() { init(); while(1) { keyscan(); if(k1==0||k1==1||k1==2||k1==3) // 显示调节时间 { display(); 第2 页 } if(k1==4||k1==5||k1==6