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

📄 多功能密码锁.lst

📁 单片机开发液晶显示万年历计算器电子琴电子音乐字母输入
💻 LST
📖 第 1 页 / 共 2 页
字号:
 199   1                  x=10;
 200   1              gotoxy(2,x-10);
 201   1              display_LCD_int(dat/1000000000);
 202   1              gotoxy(2,x-9);
 203   1              display_LCD_int(dat/100000000%10);      
 204   1              gotoxy(2,x-8);
 205   1              display_LCD_int(dat/10000000%10);
 206   1              gotoxy(2,x-7);
 207   1              display_LCD_int(dat/1000000%10);
 208   1              gotoxy(2,x-6);
 209   1              display_LCD_int(dat/100000%10);
 210   1              gotoxy(2,x-5);
 211   1              display_LCD_int(dat/10000%10);                  
 212   1              gotoxy(2,x-4);
 213   1              display_LCD_int(dat/1000%10);                   
 214   1              gotoxy(2,x-3);
 215   1              display_LCD_int(dat/100%10);                    
 216   1              gotoxy(2,x-2);
 217   1              display_LCD_int(dat/10%10);                     
 218   1              gotoxy(2,x-1);
 219   1              display_LCD_int(dat%10);
 220   1      }
 221          
 222          
 223          Calculator( void )
 224          {  
 225   1          unsigned char temp;
 226   1              unsigned char key;
 227   1              unsigned char i=0;
 228   1              init_LCD();
 229   1          clear_LCD();
 230   1          gotoxy(2,6);
 231   1          display_LCD_string("Calculator");
 232   1              while(1)
 233   1              {  
 234   2                  key=gotkey();
C51 COMPILER V8.02   禵功能密码薩                                                          03/05/2009 19:15:02 PAGE 5   

 235   2                  switch(key)         
 236   2                  {
 237   3                      case  0:  
 238   3                                  dat1=dat1*10+0;
 239   3                                  gotoxy(1,i);
 240   3                                      i++;
 241   3                                  display_LCD_int(0);
 242   3                                  break;
 243   3                      case  1:  
 244   3                                  dat1=dat1*10+1;
 245   3                                  dat3=dat1;
 246   3                                  gotoxy(1,i);
 247   3                                      i++;
 248   3                                  display_LCD_int(1);
 249   3                                  break;
 250   3                      case  2:  
 251   3                                      dat1=dat1*10+2;
 252   3                                      dat3=dat1;
 253   3                                  gotoxy(1,i);
 254   3                                      i++;
 255   3                                  display_LCD_int(2);
 256   3                                      break;
 257   3                      case  3:  
 258   3                                      dat1=dat1*10+3;
 259   3                                      dat3=dat1;
 260   3                                  gotoxy(1,i);
 261   3                                      i++;
 262   3                                  display_LCD_int(3);
 263   3                                      break;
 264   3                      case  4:  
 265   3                                      dat1=dat1*10+4;
 266   3                                      dat3=dat1;
 267   3                                  gotoxy(1,i);
 268   3                                      i++;
 269   3                                  display_LCD_int(4);
 270   3                                      break;
 271   3                      case  5:  
 272   3                                      dat1=dat1*10+5;
 273   3                                      dat3=dat1;
 274   3                                  gotoxy(1,i);
 275   3                                      i++;
 276   3                                  display_LCD_int(5);
 277   3                                      break;
 278   3                      case  6:  
 279   3                                      dat1=dat1*10+6;
 280   3                                      dat3=dat1;
 281   3                                  gotoxy(1,i);
 282   3                                      i++;
 283   3                                  display_LCD_int(6);
 284   3                                      break;
 285   3                              case  7:
 286   3                                      dat1=dat1*10+7;
 287   3                                      dat3=dat1;
 288   3                                  gotoxy(1,i);
 289   3                                      i++;
 290   3                                  display_LCD_int(7);
 291   3                                      break;
 292   3                      case  8:  
 293   3                                      dat1=dat1*10+8;
 294   3                                      dat3=dat1;
 295   3                                  gotoxy(1,i);
 296   3                                      i++;
C51 COMPILER V8.02   禵功能密码薩                                                          03/05/2009 19:15:02 PAGE 6   

 297   3                                  display_LCD_int(8);
 298   3                                      break;
 299   3                      case  9:  
 300   3                                      dat1=dat1*10+9;
 301   3                                      dat3=dat1;
 302   3                                  gotoxy(1,i);
 303   3                                      i++;
 304   3                                  display_LCD_int(9);
 305   3                                      break;
 306   3                  case 10:  
 307   3                                  i=0;
 308   3                                      dat1=0;
 309   3                                      dat2=0;
 310   3                                      dat3=0;
 311   3                                      clear_LCD();
 312   3                                      gotoxy(1,15);
 313   3                                      display_LCD_string("C");
 314   3                                      break;
 315   3                      case 11:  
 316   3                                  i=0;
 317   3                          dat3=0;
 318   3                                      gotoxy(1,15);display_LCD_string("=");
 319   3                          switch(temp)
 320   3                          {
 321   4                                          case '+':dat3=dat2+dat1;break;
 322   4                              case '-':dat3=dat2-dat1;break;
 323   4                                  case '*':dat3=dat2*dat1;break;
 324   4                                  case '/':dat3=dat2/dat1;break;
 325   4                              }
 326   3                                      print_num(dat3);
 327   3                              break;          
 328   3                              case 12:  
 329   3                                  i=0;
 330   3                                      dat3=0;
 331   3                                      dat2=dat1;
 332   3                                      dat1=0;temp='+';
 333   3                                      dat3=dat2;clear_LCD();
 334   3                                      gotoxy(1,15);
 335   3                                      display_LCD_string("+");
 336   3                                      break;
 337   3                      case 13:  
 338   3                                  i=0;
 339   3                                      dat3=0;
 340   3                                      dat2=dat1;
 341   3                                      dat1=0;
 342   3                                      temp='-';
 343   3                                      dat3=dat2;
 344   3                                      clear_LCD();
 345   3                                      gotoxy(1,15);
 346   3                                      display_LCD_string("-");
 347   3                                      break;
 348   3                      case 14:  
 349   3                                  i=0;
 350   3                                      dat3=0;
 351   3                                      dat2=dat1;
 352   3                                      dat1=0;
 353   3                                      temp='*';
 354   3                                      dat3=dat2;
 355   3                                      clear_LCD();
 356   3                                      gotoxy(1,15);
 357   3                                      display_LCD_string("X");
 358   3                                      break;
C51 COMPILER V8.02   禵功能密码薩                                                          03/05/2009 19:15:02 PAGE 7   

 359   3                      case 15:  
 360   3                                  i=0;
 361   3                                      dat3=0;
 362   3                                      dat2=dat1;
 363   3                                      dat1=0;
 364   3                                      temp='/';
 365   3                                      dat3=dat2;clear_LCD();
 366   3                                      gotoxy(1,15);
 367   3                                      display_LCD_string("/");
 368   3                                      break;
 369   3                              default:                
 370   3                              break;
 371   3                  }
 372   2              }
 373   1      }
 374          /************************************************          END          **********************************
             -************************/
 375          
 376          
 377          
 378          
 379          
 380          
 381          
 382          /************************************************     主函数及菜单      **********************************
             -************************/
 383          void main( void )
 384          {
 385   1          char num;
 386   1              init_LCD();
 387   1          clear_LCD();
 388   1              num=0;
 389   1              while(1)
 390   1              {
 391   2                  Calculator();
 392   2              }
 393   1      }
 394          /************************************************          END          **********************************
             -************************/


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1841    ----
   CONSTANT SIZE    =     58    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     12       8
   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 + -