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

📄 51

📁 51单片机大量源码
💻
📖 第 1 页 / 共 3 页
字号:
 255          
 256          void key_manage5()
 257          {
 258   1      tab_key[n]=4;
 259   1      n++;
 260   1      if(xiugaiflag==1)
 261   1      {
 262   2      mima[count4]=4;
 263   2      count4++;
 264   2      }
 265   1      }
 266          
 267          void key_manage6()
 268          {
 269   1      tab_key[n]=5;
 270   1      n++;
 271   1      if(xiugaiflag==1)
 272   1      {
 273   2      mima[count4]=5;
 274   2      count4++;
 275   2      }
 276   1      }
 277          void key_manage7()
 278          {
 279   1      tab_key[n]=6;
 280   1      n++;
 281   1      if(xiugaiflag==1)
 282   1      {
 283   2      mima[count4]=6;
 284   2      count4++;
 285   2      }
 286   1      }
 287          void key_manage8()
 288          {
 289   1      tab_key[n]=7;
 290   1      n++;
 291   1      if(xiugaiflag==1)
 292   1      {
 293   2      mima[count4]=7;
 294   2      count4++;
 295   2      }
 296   1      }
 297          
 298          void key_manage9()
 299          {
 300   1      tab_key[n]=8;
 301   1      n++;
 302   1      if(xiugaiflag==1)
 303   1      {
C51 COMPILER V8.02   PASSWORD                                                              07/22/2009 13:42:13 PAGE 6   

 304   2      mima[count4]=8;
 305   2      count4++;
 306   2      }
 307   1      }
 308          void key_manage10()
 309          {
 310   1      tab_key[n]=9;
 311   1      n++;
 312   1      if(xiugaiflag==1)
 313   1      {
 314   2      mima[count4]=9;
 315   2      count4++;
 316   2      }
 317   1      }
 318          //**********************************确认键**************************************************************  
 319          void key_manage11()
 320          {
 321   1              enterflag=1;                                    //确认键按下
 322   1              if(n==8)                                           //只有输入8个密码后按确认才做比较
 323   1                      mimaflag=mimacmp();
 324   1              else
 325   1                      mimaflag=0;
 326   1               if(enterflag==1)
 327   1                      {
 328   2                              enterflag=0;
 329   2                              n=0;
 330   2                              //用FFFFFFFF清除已经输入的密码
 331   2                              for(count3=0;count3<8;count3++)
 332   2                              {       
 333   3                                      delay(5);
 334   3                                      tab_key[count3]=0x0f;           
 335   3                              }               
 336   2                                              
 337   2                              TR1=1;                                                                  //打开计数器1
 338   2                              count1=0;                                                               //定时器1由50MS累计到1S所用的计数器
 339   2                              if(mimaflag==1)
 340   2                              {       
 341   3                                      a=0;
 342   3                              
 343   3                                      write_com(0x01);
 344   3                                      write_com(0x80);
 345   3                                      for(count3=0;count3<16;count3++)
 346   3                                      {
 347   4                                              write_date(table4[count3]);     //密码正确,显示RIGHT,绿灯亮
 348   4                                              delay(5);
 349   4                                      }
 350   3                              }
 351   2                                      
 352   2                          else
 353   2                              {   
 354   3                                      n=0;
 355   3                                      red=0;
 356   3                              bell=0;
 357   3                                      a++;
 358   3                                      if(a==1)
 359   3                                      {
 360   4                                              for(count3=0;count3<8;count3++) //ffffffff清除密码
 361   4                                              {       
 362   5                                                      delay(5);
 363   5                                                      tab_key[count3]=0x0f;           
 364   5                                              }
 365   4                                              write_com(0x01);                                                                                
C51 COMPILER V8.02   PASSWORD                                                              07/22/2009 13:42:13 PAGE 7   

 366   4                                              write_com(0x80);
 367   4                                              for(count3=0;count3<16;count3++)
 368   4                                              {
 369   5                                                      write_date(table5[count3]);     //密码错误,显示 first error,红灯亮
 370   5                                                      delay(5);
 371   5                                              }
 372   4                                                      TR1=1;
 373   4                                      }
 374   3                                      if(a==2)
 375   3                                      {       
 376   4                                              for(count3=0;count3<8;count3++) //ffffffff清除密码
 377   4                                              {       
 378   5                                                      delay(5);
 379   5                                                      tab_key[count3]=0x0f;           
 380   5                                              }
 381   4                                                      write_com(0x01);
 382   4                                                      write_com(0x80);
 383   4                                                      for(count3=0;count3<16;count3++)
 384   4                                                      {
 385   5                                                              write_date(table6[count3]);     //密码错误,显示SECOND ERROR,红灯亮
 386   5                                                              delay(5);
 387   5                                                      }
 388   4                                                              TR1=1;
 389   4                                      }
 390   3                                              
 391   3                                        if(a==3)
 392   3                                              {       
 393   4                                                      for(count3=0;count3<8;count3++) //ffffffff清除密码
 394   4                                                      {       
 395   5                                                              delay(5);
 396   5                                                              tab_key[count3]=0x0f;           
 397   5                                                      }
 398   4                                                      write_com(0x01);
 399   4                                                      write_com(0x80);
 400   4                                                      for(count3=0;count3<16;count3++)
 401   4                                                      {
 402   5                                                              write_date(table7[count3]);     //密码错误,显示third error see,红灯亮
 403   5                                                              delay(5);
 404   5                                                      }
 405   4                                                      write_com(0x80+0x40);
 406   4                                                      for(count3=0;count3<16;count3++)
 407   4                                                      {
 408   5                                                              write_date(table8[count3]);//密码错误,显示 U TOMORROW ,红灯亮
 409   5                                                              delay(5);
 410   5                                                      }
 411   4                                                              TR1=0;
 412   4                                                                      
 413   4                                              }
 414   3                                                              
 415   3                      }
 416   2              }
 417   1      
 418   1      }
 419          void key_manage12()
 420          {
 421   1      tab_key[n]=11;
 422   1      n++;                                              //密码计数清零
 423   1      
 424   1      }
 425          //****************************************************取消键********************************************  
 426          void key_manage13()
 427          {
C51 COMPILER V8.02   PASSWORD                                                              07/22/2009 13:42:13 PAGE 8   

 428   1      
 429   1      n=0;                                              //密码计数清零
 430   1      write_com(0x80);                                                //指针所指位置
 431   1      for(count3=0;count3<16;count3++)
 432   1      {
 433   2              write_date(table1[count3]);             //第一行显示INPUT THE PASSPORD:
 434   2              delay(5);
 435   2      }
 436   1      write_com(0x80+0x40);
 437   1      for(count3=0;count3<16;count3++)
 438   1      {
 439   2              write_date(table2[count3]);     //开机显示--------
 440   2              delay(5);
 441   2              tab_key[count3]=0x0f;                   //用FFFFFFFF清楚已经输入的密码
 442   2      }
 443   1      
 444   1      }
 445          //*******************************************修改密码键**********************************
 446          void key_manage14()
 447          {
 448   1              uchar aa=0;
 449   1              n=0;
 450   1              xiugaiflag=1;
 451   1              write_com(0x01);
 452   1              write_com(0x80);
 453   1      for(count3=0;count3<16;count3++)
 454   1      {
 455   2              write_date(table9[count3]);     //显示define the password
 456   2              delay(5);
 457   2              tab_key[count3]=0x0f;                   //用FFFFFFFF清楚已经输入的密码
 458   2      }
 459   1              write_com(0x80+0x40);
 460   1      for(count3=0;count3<16;count3++)
 461   1      {
 462   2              write_date(table10[count3]);    //显示--------
 463   2              delay(5);
 464   2      }
 465   1      TR0=1;
 466   1      
 467   1      }
 468          //******************************************修改密码键的确认键********************************
 469          void key_manage15()
 470          {
 471   1      n=0;
 472   1      enter1flag=1;
 473   1      if(enter1flag==1)
 474   1      {
 475   2              enter1flag=0;
 476   2              count4=0;
 477   2              for(count3=0;count3<16;count3++)
 478   2              {
 479   3              tab_key[count3]=0x0f;                   //用FFFFFFFF清楚已经输入的密码
 480   3              }
 481   2              write_com(0x01);
 482   2              write_com(0x80);
 483   2              for(count3=0;count3<16;count3++)
 484   2              {
 485   3                      write_date(table11[count3]);
 486   3                      delay(100);
 487   3              }
 488   2              TR1=1;
 489   2              count1=0;
C51 COMPILER V8.02   PASSWORD                                                              07/22/2009 13:42:13 PAGE 9   

 490   2      }
 491   1      }
 492          void key_manage16()
 493          {
 494   1      tab_key[n]=15;
 495   1      n++;
 496   1      }
 497          
 498          //****************************************定时器1的50MS,共延时1秒*****************************
 499          void time_1() interrupt 3
 500          {       
 501   1      
 502   1              TH1=(65536-50000)/256;
 503   1              TL1=(65536-50000)%256;
 504   1              if(count1<20)
 505   1              {
 506   2                      count1++;
 507   2              }
 508   1              else                                                    //计时到1S
 509   1              {
 510   2                      TR1=0;
 511   2                      count1=0;
 512   2                      mimaflag=0;
 513   2      
 514   2                      red=1;
 515   2                      bell=1;
 516   2                      //显示FFFFFFFF
 517   2                      write_com(0x01);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -