久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1688|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

密碼鎖

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:270029 發(fā)表于 2018-1-2 17:17 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
//-----------------------------------------------------------------
//原始程序中相鄰兩位密碼不能相同.
//本壓縮包中的HEX由修改后的新程序編譯生成,允許輸入任意密碼.
//-----------------------------------------------------------------
//實(shí)訓(xùn)100例中本例內(nèi)的main函數(shù)可用以下代碼替換.
//改動(dòng)的主要是main函數(shù)中while循環(huán)內(nèi)的代碼.
//-----------------------------------------------------------------
// 主程序
//-----------------------------------------------------------------
void main()
{
   uchar i = 0;
   uchar IIC_Password[10];
   uchar IS_Valid_User = 0;
   P0 = 0xFF;     
   P1 = 0xFF;
   P2 = 0xFF;  

   TMOD = 0x02;                     //T0設(shè)置為8位自動(dòng)重裝模式
   TH0 = 175;                  
   TL0 = 175;
   TR0 = 1;                         //啟動(dòng)T0

   DelayMS(10);               
   LCD_Init();                      //初始化LCD  

   IIC_24C04_Init();                //初始化24C04  

   Display_String(Title_Text,0x00); //在第1行顯示標(biāo)題

   //24C04的內(nèi)容已由初始化BIN文件導(dǎo)入
   //將24C04中預(yù)先寫(xiě)入的密碼讀入pass
   RecString(0xa0, 0 , IIC_Password, 6);   
   IIC_Password[6] = '\0';

   while(1)
   {
      P1 = 0xF0;
      if(P1 != 0xF0) KeyNo = Keys_Scan();  //掃描鍵盤(pán)獲取鍵序號(hào)KeyNo

      switch ( KeyNo )
      {
           case 0:  case 1: case 2: case 3: case 4:
           case 5:  case 6: case 7: case 8: case 9:

                   if ( i<= 5 )             //密碼限制在6位以內(nèi)
                   {
                        //如果i為0則執(zhí)行一次清屏
                        if (i ==0) Display_String("                ",0x40);

                        UserPassword[i] = KeyNo + '0';
                        UserPassword[i+1] = '\0';

                        DSY_BUFFER[i] = '*';
                        DSY_BUFFER[i+1] = '\0';

                        Display_String(DSY_BUFFER,0x40);

                        i++;
                    }
                    break;

           case 10: //按A鍵開(kāi)鎖
                    if (strcmp(UserPassword,IIC_Password) == 0)
                    {
                       LED_OPEN = 0;  //點(diǎn)亮LED
                       Clear_Password();
                       Display_String("Unlock OK!      ",0x40);
                       IS_Valid_User = 1;
                    }
                    else
                    {
                       LED_OPEN =1;   //關(guān)閉LED
                       Clear_Password();
                       Display_String("ERROR !         ",0x40);
                       IS_Valid_User = 0;
                    }
                    i = 0;
                    break;

           case 11: //按B鍵上鎖
                    LED_OPEN =1;   
                    Clear_Password();
                    Display_String(Title_Text,0x00);
                    Display_String("                ",0x40);
                    i = 0;                        
                    IS_Valid_User = 0;               
                    break;

           case 12: //按C鍵設(shè)置新密碼
                    //如果是合法用戶則提示輸入新密碼
                    if ( !IS_Valid_User ) Display_String("No rights !",0x40);
                    else
                    {
                       i = 0;
                       Display_String("New Password:   ",0x00);
                       Display_String("                ",0x40);
                     }

                    break;                        

           case 13: //按D鍵保存新密碼
                    if ( !IS_Valid_User ) Display_String("No rights !",0x40);
                    else
                    {
                       SendString(0xa0, 0 , UserPassword, 6);

                       //重新讀入剛寫(xiě)的密碼
                       RecString(0xa0, 0 , IIC_Password, 6);   
                       IIC_Password[6] = '\0';                           

                       i = 0;
                       Display_String(Title_Text,0x00);
                       Display_String("Password Saved! ",0x40);
                     }               

                    break;                        

           case 14: //按E鍵消除所有輸入
                    i = 0;
                    Clear_Password();
                    Display_String("                ",0x40);            
       }

       Beep();         
       DelayMS(100);
       P1= 0xF0;
       while (P1 != 0xF0);    //如果有鍵未釋放則等待
       while (P1 == 0xF0);    //如果沒(méi)有再次按下按鍵則等待
   }
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久久成人精品 | 视频一区 国产精品 | 久久精品免费 | 久久精品视频在线播放 | 欧美久久久久久 | 日日骑| 黑色丝袜三级在线播放 | 91精品国产乱码久久久久久久久 | 日韩在线| 老司机狠狠爱 | 亚洲欧美日韩国产 | 久久久久久久久91 | 日韩欧美第一页 | 日韩欧美视频免费在线观看 | 久草在线影 | 国产成人jvid在线播放 | 视频一区在线 | 亚洲国产成人精品女人久久久 | 在线播放中文字幕 | 欧美国产亚洲一区二区 | 色婷婷精品久久二区二区蜜臂av | 99这里只有精品视频 | 天天射中文| 国产一区黄色 | 色999视频| 国产成人一区二 | 欧美成人精品激情在线观看 | 午夜网站视频 | 国产日韩视频在线 | 色爱综合网 | 91精品国产综合久久久久久 | 一级a性色生活片久久毛片 午夜精品在线观看 | 精品一区二区三区中文字幕 | 国产精品夜间视频香蕉 | 亚洲激情在线观看 | 亚洲在线免费 | 久久91 | 精品成人av| 久久久久国产成人精品亚洲午夜 | 国产精品久久久久一区二区 | 欧美视频一区二区三区 |