这是干嘛的 if(set==0)//---------------set为功能键(设置键)-------------------- { delay(9);//延时,用于消抖动 if(set==0)//延时后再次确认按键按下 { led1=0; bltime=0; buzzer=0;//蜂鸣器短响一次 delay(20); buzzer=1; while(!set); if(T_NL_NZ==0x02) //证明是对闹钟进行设置 { setNZn++; if(setNZn==4) //闹钟设定成功,退回到正常显示并开启闹钟 { setNZn=0; setn=0; } switch(setNZn) { case 0: //正常显示日期时间 write_1602com(0x0c); //设置光标不闪? write_1602com(er); //时间显示固定符号写入位置? for(a=0;a<16;a++) write_1602dat(NZd[a]); //写显示时间固定符号,两个冒号 write_sfm(7,nz_shi); //闹钟 时 write_sfm(10,nz_fen); //闹钟 分 write_1602com(er+13); if(timerOn==1) { write_1602dat('O'); write_1602dat('N'); write_1602dat(' '); } else { write_1602dat('O'); write_1602dat('F'); write_1602dat('F'); } break;
时间: 2024-04-22 22:27:15 浏览: 148
set-up-a-jenkins-build-server
这段代码实现了对设置键(set)的响应,具体来说,当检测到设置键被按下时,会进行如下操作:
1. 进行消抖动,即延时一段时间等待按键稳定。
2. 确认按键已经按下,然后短响蜂鸣器一次,关闭背光灯。
3. 如果正在设置 NL_NZ,就进行闹钟设置,将 setNZn 加 1。如果 setNZn 达到了 4,就表示闹钟设置成功,将 setNZn 和 setn 都重新置为 0,回到正常的时间显示模式,并开启闹钟。
4. 根据当前 setNZn 的值,更新 LCD 显示的内容。具体来说,如果 setNZn 为 0,就显示日期时间和闹钟;如果 setNZn 为 1,就显示闹钟小时数;如果 setNZn 为 2,就显示闹钟分钟数;如果 setNZn 为 3,就显示是否开启闹钟。
阅读全文