📄 timer.lst
字号:
194 4 }
195 3 if(key==KEY_DOWN)
196 3 {
197 4 display_on=1;
198 4 minute--;
199 4 if(minute>=60)minute=59;
200 4 key=0;
201 4 }
202 3 display_buffer[5]=second%10;
203 3 display_buffer[4]=second/10;
204 3 display_buffer[3]=16+minute%10;
205 3 display_buffer[2]=minute/10;
206 3 display_buffer[1]=16+hour%10;
207 3 display_buffer[0]=hour/10;
208 3 if(!display_on)
209 3 {
210 4 flicker_time++;
211 4 if(flicker_time>20){flicker_time=0;display_on=1;}
212 4 display_buffer[3]=DISPLAY_OFF;
213 4 display_buffer[2]=DISPLAY_OFF;
214 4 }
215 3 else
216 3 {
217 4 flicker_time++;
218 4 if(flicker_time>30){flicker_time=0;display_on=0;}
219 4 }
220 3 display(display_buffer);
221 3 break;
222 3 }
223 2 case HOUR_ADJ: //小时调整状态
224 2 {
225 3 if(key==KEY_UP)
226 3 {
227 4 display_on=1;
228 4 hour++;
229 4 if(hour>=24)hour=0;
230 4 key=0;
231 4 }
232 3 if(key==KEY_DOWN)
233 3 {
234 4 display_on=1;
235 4 hour--;
236 4 if(hour>=24)hour=23;
237 4 key=0;
238 4 }
239 3 display_buffer[5]=second%10;
240 3 display_buffer[4]=second/10;
241 3 display_buffer[3]=16+minute%10;
C51 COMPILER V7.50 TIMER 06/22/2008 15:54:32 PAGE 5
242 3 display_buffer[2]=minute/10;
243 3 display_buffer[1]=16+hour%10;
244 3 display_buffer[0]=hour/10;
245 3 if(!display_on)
246 3 {
247 4 flicker_time++;
248 4 if(flicker_time>20){flicker_time=0;display_on=1;}
249 4 display_buffer[1]=DISPLAY_OFF;
250 4 display_buffer[0]=DISPLAY_OFF;
251 4 }
252 3 else
253 3 {
254 4 flicker_time++;
255 4 if(flicker_time>30){flicker_time=0;display_on=0;}
256 4 }
257 3 display(display_buffer);
258 3 break;
259 3 }
260 2 case DAY_ADJ: //天调整状态
261 2 {
262 3 if(key==KEY_UP)
263 3 {
264 4 display_on=1;
265 4 day++;
266 4 if(day>days_of_month)day=1;
267 4 key=0;
268 4 }
269 3 if(key==KEY_DOWN)
270 3 {
271 4 display_on=1;
272 4 day--;
273 4 if(day==0)day=days_of_month;
274 4 key=0;
275 4 }
276 3 display_buffer[5]=16+day%10;
277 3 display_buffer[4]=day/10;
278 3 display_buffer[3]=16+month%10;
279 3 display_buffer[2]=month/10;
280 3 display_buffer[1]=16+year%10;
281 3 display_buffer[0]=year/10;
282 3 if(!display_on)
283 3 {
284 4 flicker_time++;
285 4 if(flicker_time>20){flicker_time=0;display_on=1;}
286 4 display_buffer[5]=DISPLAY_OFF;
287 4 display_buffer[4]=DISPLAY_OFF;
288 4 }
289 3 else
290 3 {
291 4 flicker_time++;
292 4 if(flicker_time>30){flicker_time=0;display_on=0;}
293 4 }
294 3 display(display_buffer);
295 3 break;
296 3 }
297 2 case MONTH_ADJ:
298 2 {
299 3 if(key==KEY_UP)
300 3 {
301 4 display_on=1;
302 4 month++;
303 4 if(month>=13)month=1;
C51 COMPILER V7.50 TIMER 06/22/2008 15:54:32 PAGE 6
304 4 days_of_month=calculate_days();
305 4 if(day>days_of_month)day=days_of_month;
306 4 key=0;
307 4 }
308 3 if(key==KEY_DOWN)
309 3 {
310 4 display_on=1;
311 4 month--;
312 4 if(month==0)month=12;
313 4 days_of_month=calculate_days();
314 4 if(day>days_of_month)day=days_of_month;
315 4 key=0;
316 4 }
317 3 display_buffer[5]=16+day%10;
318 3 display_buffer[4]=day/10;
319 3 display_buffer[3]=16+month%10;
320 3 display_buffer[2]=month/10;
321 3 display_buffer[1]=16+year%10;
322 3 display_buffer[0]=year/10;
323 3 if(!display_on)
324 3 {
325 4 flicker_time++;
326 4 if(flicker_time>20){flicker_time=0;display_on=1;}
327 4 display_buffer[3]=DISPLAY_OFF;
328 4 display_buffer[2]=DISPLAY_OFF;
329 4 }
330 3 else
331 3 {
332 4 flicker_time++;
333 4 if(flicker_time>30){flicker_time=0;display_on=0;}
334 4 }
335 3 display(display_buffer);
336 3 break;
337 3 }
338 2 case YEAR_ADJ: //年天调整状态
339 2 {
340 3 if(key==KEY_UP)
341 3 {
342 4 display_on=1;
343 4 year++;
344 4 if(year>=100)year=0;
345 4 days_of_month=calculate_days();
346 4 if(day>days_of_month)day=days_of_month;
347 4 key=0;
348 4 }
349 3 if(key==KEY_DOWN)
350 3 {
351 4 display_on=1;
352 4 year--;
353 4 if(year>=100)year=99;
354 4 days_of_month=calculate_days();
355 4 if(day>days_of_month)day=days_of_month;
356 4 key=0;
357 4 }
358 3 display_buffer[5]=16+day%10;
359 3 display_buffer[4]=day/10;
360 3 display_buffer[3]=16+month%10;
361 3 display_buffer[2]=month/10;
362 3 display_buffer[1]=16+year%10;
363 3 display_buffer[0]=year/10;
364 3 if(!display_on)
365 3 {
C51 COMPILER V7.50 TIMER 06/22/2008 15:54:32 PAGE 7
366 4 flicker_time++;
367 4 if(flicker_time>20){flicker_time=0;display_on=1;}
368 4 display_buffer[1]=DISPLAY_OFF;
369 4 display_buffer[0]=DISPLAY_OFF;
370 4 }
371 3 else
372 3 {
373 4 flicker_time++;
374 4 if(flicker_time>30){flicker_time=0;display_on=0;}
375 4 }
376 3 display(display_buffer);
377 3 break;
378 3 }
379 2 }
380 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1366 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 18 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -