⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timer.lst

📁 单片机数字钟-LCD1602显示 带四键时钟 按键对应关系: key1 —— 减 key2 —— 加 key3 —— 设定 key4 —— 确定
💻 LST
📖 第 1 页 / 共 2 页
字号:
 204   3           break;
 205   3          }
 206   2         case MINUTE_ADJ:       //分调整状态
 207   2          {
 208   3           if(key==KEY_UP)
 209   3            {
 210   4             display_on=1;
 211   4             minute++;
 212   4             if(minute>=60)minute=0;
 213   4             key=0;
 214   4            }
 215   3           if(key==KEY_DOWN)
 216   3            {
 217   4             display_on=1;
 218   4             minute--;
 219   4             if(minute>=60)minute=59;
 220   4             key=0;
 221   4            }
 222   3           display_buffer[5]=second%10;
 223   3           display_buffer[4]=second/10;
 224   3           display_buffer[3]=16+minute%10;
 225   3           display_buffer[2]=minute/10;
 226   3           display_buffer[1]=16+hour%10;
 227   3           display_buffer[0]=hour/10;
 228   3           if(!display_on)
 229   3            {
 230   4             flicker_time++;
 231   4             if(flicker_time>20){flicker_time=0;display_on=1;}
 232   4             display_buffer[3]=DISPLAY_OFF;
 233   4             //display_buffer[2]=DISPLAY_OFF;
 234   4            }
 235   3           else
 236   3            {
 237   4             flicker_time++;
 238   4             if(flicker_time>30){flicker_time=0;display_on=0;}
 239   4            }
 240   3           display(display_buffer);
 241   3           break;
C51 COMPILER V7.02a   TIMER                                                                05/05/2007 09:01:00 PAGE 5   

 242   3          }
 243   2         case HOUR_ADJ:           //小时调整状态
 244   2          {
 245   3           if(key==KEY_UP)
 246   3            {
 247   4             display_on=1;
 248   4             hour++;
 249   4             if(hour>=24)hour=0;
 250   4             key=0;
 251   4            }
 252   3           if(key==KEY_DOWN)
 253   3            {
 254   4             display_on=1;
 255   4             hour--;
 256   4             if(hour>=24)hour=23;
 257   4             key=0;
 258   4            }
 259   3           display_buffer[5]=second%10;
 260   3           display_buffer[4]=second/10;
 261   3           display_buffer[3]=16+minute%10;
 262   3           display_buffer[2]=minute/10;
 263   3           display_buffer[1]=16+hour%10;
 264   3           display_buffer[0]=hour/10;
 265   3           if(!display_on)
 266   3            {
 267   4             flicker_time++;
 268   4             if(flicker_time>20){flicker_time=0;display_on=1;}
 269   4             display_buffer[1]=DISPLAY_OFF;
 270   4           //  display_buffer[0]=DISPLAY_OFF;
 271   4            }
 272   3           else
 273   3            {
 274   4             flicker_time++;
 275   4             if(flicker_time>30){flicker_time=0;display_on=0;}
 276   4            }
 277   3           display(display_buffer);
 278   3           break;
 279   3          }
 280   2         case DAY_ADJ:       //天调整状态
 281   2          {
 282   3           if(key==KEY_UP)
 283   3            {
 284   4             display_on=1;
 285   4             day++;
 286   4             if(day>days_of_month)day=1;
 287   4             key=0;
 288   4            }
 289   3           if(key==KEY_DOWN)
 290   3            {
 291   4             display_on=1;
 292   4             day--;
 293   4             if(day==0)day=days_of_month;
 294   4             key=0;
 295   4            }
 296   3           display_buffer[5]=16+day%10;
 297   3           display_buffer[4]=day/10;
 298   3           display_buffer[3]=16+month%10;
 299   3           display_buffer[2]=month/10;
 300   3           display_buffer[1]=16+year%10;
 301   3           display_buffer[0]=year/10;
 302   3           if(!display_on)
 303   3            {
C51 COMPILER V7.02a   TIMER                                                                05/05/2007 09:01:00 PAGE 6   

 304   4             flicker_time++;
 305   4             if(flicker_time>20){flicker_time=0;display_on=1;}
 306   4             display_buffer[5]=DISPLAY_OFF;
 307   4             //display_buffer[4]=DISPLAY_OFF;
 308   4            }
 309   3           else
 310   3            {
 311   4             flicker_time++;
 312   4             if(flicker_time>30){flicker_time=0;display_on=0;}
 313   4            }
 314   3           display(display_buffer);
 315   3           break;
 316   3          }
 317   2         case MONTH_ADJ:
 318   2          {
 319   3           if(key==KEY_UP)
 320   3            {
 321   4             display_on=1;
 322   4             month++;
 323   4             if(month>=13)month=1;
 324   4             days_of_month=calculate_days();
 325   4             if(day>days_of_month)day=days_of_month;
 326   4             key=0;
 327   4            }
 328   3           if(key==KEY_DOWN)
 329   3            {
 330   4             display_on=1;
 331   4             month--;
 332   4             if(month==0)month=12;
 333   4             days_of_month=calculate_days();
 334   4             if(day>days_of_month)day=days_of_month;
 335   4             key=0;
 336   4            }
 337   3           display_buffer[5]=16+day%10;
 338   3           display_buffer[4]=day/10;
 339   3           display_buffer[3]=16+month%10;
 340   3           display_buffer[2]=month/10;
 341   3           display_buffer[1]=16+year%10;
 342   3           display_buffer[0]=year/10;
 343   3           if(!display_on)
 344   3            {
 345   4             flicker_time++;
 346   4             if(flicker_time>20){flicker_time=0;display_on=1;}
 347   4             display_buffer[3]=DISPLAY_OFF;
 348   4           //  display_buffer[2]=DISPLAY_OFF;
 349   4            }
 350   3           else
 351   3            {
 352   4             flicker_time++;
 353   4             if(flicker_time>30){flicker_time=0;display_on=0;}
 354   4            }
 355   3           display(display_buffer);
 356   3           break;
 357   3          }
 358   2         case YEAR_ADJ:          //年天调整状态
 359   2          {
 360   3           if(key==KEY_UP)
 361   3            {
 362   4             display_on=1;
 363   4             year++;
 364   4             if(year>=100)year=0;
 365   4             days_of_month=calculate_days();
C51 COMPILER V7.02a   TIMER                                                                05/05/2007 09:01:00 PAGE 7   

 366   4             if(day>days_of_month)day=days_of_month;
 367   4             key=0;
 368   4            }
 369   3           if(key==KEY_DOWN)
 370   3            {
 371   4             display_on=1;
 372   4             year--;
 373   4             if(year>=100)year=99;
 374   4             days_of_month=calculate_days();
 375   4             if(day>days_of_month)day=days_of_month;
 376   4             key=0;
 377   4            }
 378   3           display_buffer[5]=16+day%10;
 379   3           display_buffer[4]=day/10;
 380   3           display_buffer[3]=16+month%10;
 381   3           display_buffer[2]=month/10;
 382   3           display_buffer[1]=16+year%10;
 383   3           display_buffer[0]=year/10;
 384   3           if(!display_on)
 385   3            {
 386   4             flicker_time++;
 387   4             if(flicker_time>20){flicker_time=0;display_on=1;}
 388   4             display_buffer[1]=DISPLAY_OFF;
 389   4            // display_buffer[0]=DISPLAY_OFF;
 390   4            }
 391   3           else
 392   3            {
 393   4             flicker_time++;
 394   4             if(flicker_time>30){flicker_time=0;display_on=0;}
 395   4            }
 396   3           display(display_buffer);
 397   3           break;
 398   3          }
 399   2        }
 400   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1358    ----
   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 + -