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

📄 接收.lst

📁 毕业设计—红外遥控电子密码锁
💻 LST
📖 第 1 页 / 共 3 页
字号:
 315   2              keyscan();
 316   2                      write_com(0x80+9+w);
 317   2                      if(flag==1&&num<=9)
 318   2                      {
 319   3                              pswd[w]=num;
 320   3                              write_data(table3[w]);
 321   3                              w++;
 322   3                              if(w==6)
 323   3                          write_com(0x0c);    
 324   3                      }
 325   2                      if(flag==1&&num==14)    //14则删除误输入的密码,即返回上一步.
 326   2                              {
 327   3                                      w--;
 328   3                                      if(w==255)
 329   3                                              w=w+1;
 330   3                                      write_com(0x80+9+w);
 331   3                                      write_data(table13[w+1]);       
 332   3                                      if(flag==1&&num<=9)
 333   3                                      {
 334   4                                      pswd[w]=num;
 335   4                                      write_data(table3[w]);                          
 336   4                                      }       
 337   3                              }
 338   2          }   while(w<=5);
 339   1      }
 340          
 341          /*********输入初始密码正确后,密码修改****************/
 342          void mima1()
 343          {       
 344   1              uchar f=0,n=0,d=0;
 345   1              if(sum==0)
 346   1                      {
 347   2                      write_com(0x80+0x40);
 348   2                              for(r=0;r<14;r++)
 349   2                              {
 350   3                              delay(20);
 351   3                              write_data(table5[r]);  
 352   3                              }
 353   2                              delay(2000);
 354   2                                              do
 355   2                                              {               
 356   3                                                      num=16;
 357   3                                                      keyscan();
 358   3                                              }while(num!=11);
 359   2      //////////////////////////////////////////////////////                                  
 360   2                                                              if(flag==1&&num==11)
 361   2                                                              {
 362   3                                                                      init();
 363   3                                                                      for(r=0;r<17;r++)
 364   3                                                                      {
C51 COMPILER V8.02   接收                                                                  05/15/2012 17:16:27 PAGE 7   

 365   4                                                                      delay(20);
 366   4                                                                      write_data(table8[r]);
 367   4                                                                      }
 368   3                                                                      write_com(0x0c);
 369   3                                                                      write_com(0x80+0x40+n);
 370   3                                                                      write_com(0x0e);
 371   3                                                              }
 372   2                                              //////////////////////////第一次输入修改密码////////////////////////////////    
 373   2                                              do{     
 374   3                                                      num=16;
 375   3                                                      keyscan();      
 376   3                                                      write_com(0x80+0x40+n);                                                                 
 377   3                                                      if(flag==1&&num<=9)
 378   3                                                              {
 379   4                                                                      init_pswd[n]=num;
 380   4                                                              write_data(table3[n]);
 381   4                                                              n++;
 382   4                                                                      if(n==6)
 383   4                                                              write_com(0x0c);        
 384   4                                                              }
 385   3                                                              if(flag==1&&num==14)    //14则删除误输入的密码,即返回上一步.
 386   3                                                                              {
 387   4                                                                                      n--;
 388   4                                                                                      if(n==255)
 389   4                                                                                      n=n+1;
 390   4                                                                                      write_com(0x80+0x40+n);
 391   4                                                                                      write_data(table13[n]); 
 392   4                                                                                      if(flag==1&&num<=9)
 393   4                                                                                              {
 394   5                                                                                              pswd[n]=num;
 395   5                                                                                              write_data(table3[n]);                          
 396   5                                                                                              }       
 397   4                                                                              }                                               
 398   3                                              }
 399   2                                                      while(n<=5);
 400   2      /////////////////////////第二次输入修改密码,并判断是否正确/////////////////////////////////////////
 401   2                                                      init();
 402   2                                              for(r=0;r<12;r++)
 403   2                                              {
 404   3                                              delay(20);
 405   3                                              write_data(table14[r]); 
 406   3                                              }
 407   2                                              do
 408   2                                              {       
 409   3                                                      flag=0;
 410   3                                              keyscan();
 411   3                                                      write_com(0x80+0x40+d);
 412   3                                                      if(flag==1&&num<=9)
 413   3                                                              {
 414   4                                                                      pswd[d]=num;
 415   4                                                                      write_data(table3[d]);
 416   4                                                                      d++;
 417   4                                                                      if(d==6)
 418   4                                                                         write_com(0x0c);     
 419   4                                                              }
 420   3                                                                      if(flag==1&&num==14)    //14则删除误输入的密码,即返回上一步.
 421   3                                                                              {
 422   4                                                                                      d--;
 423   4                                                                                      if(d==255)
 424   4                                                                                      d=d+1;
 425   4                                                                                      write_com(0x80+0x40+d);
 426   4                                                                                      write_data(table13[d+1]);       
C51 COMPILER V8.02   接收                                                                  05/15/2012 17:16:27 PAGE 8   

 427   4                                                                                      if(flag==1&&num<=9)
 428   4                                                                                              {
 429   5                                                                                              pswd[d]=num;
 430   5                                                                                              write_data(table3[d]);                          
 431   5                                                                                              }       
 432   4                                                                              }
 433   3                                               }      while(d<=5);
 434   2                                      while((pswd[f]==init_pswd[f])&f<6)//密码比较
 435   2                                      {       f++;
 436   3                                      }
 437   2                                      if(f>=6)//密码正确
 438   2                                              {
 439   3                                                      init();
 440   3                                                      for(r=0;r<15;r++)
 441   3                                                              {
 442   4                                                              delay(20);
 443   4                                                              write_data(table9[r]);
 444   4      leep=1;
 445   4                                                              }
 446   3                                                      delay(5000);
 447   3                                                      main();         
 448   3                                              }
 449   2                                      else
 450   2                                              {
 451   3                                                      init();
 452   3                                                      for(r=0;r<15;r++)
 453   3                                                              {
 454   4                                                              delay(20);
 455   4                                                              write_data(table15[r]);
 456   4                                                              }
 457   3                                                      delay(5000);
 458   3                                                      main();                                                 
 459   3                                              }                                       
 460   2                              }       
 461   1              }                                                               


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1579    ----
   CONSTANT SIZE    =    193    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     17       6
   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 + -