• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于單片機控制的密碼鎖設計(含電路圖及源程序)

    基于單片機控制的密碼鎖設計(含電路圖及源程序)

    作者: 時間:2012-09-14 來源:網絡 收藏

    //初始化51的寄存器
    TMOD=0x20; //用T1計時 8位自動裝載定時模式
    TH1=0x19; //500微秒溢出一次; 250=(256-x)*12/11.0592 -> x=19
    TL1=0x19;
    EA=1; //開中斷
    ET1=1;
    TR1=0; //開定時器T1
    while(1)
    { key_val=scan_key(); //按鍵輸入,有鍵按下key_val為0-7,無鍵按下key_val為255。
    if (key_val!=key_val_old)
    { key_val_old=key_val;
    if (key_val!=255 cnt_state!=2)
    { audio_out=0;
    delay(100); //延時去抖動
    audio_out=1;
    switch (key_val)
    { case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    if(key_index6) //密碼為6位,超過6位視為輸入無效
    { show_val[key_index]=key_val;
    key_index++; }
    break;
    case 6: //確認鍵
    if(check_input_pw())
    {//密碼正確
    error_num=0; //密碼輸入錯誤次數清零
    //---------
    pw_error=1; //密碼錯誤指示燈滅
    relay_open=0; //開鎖驅動信號燈亮
    open_lock=0; //已開鎖信號燈亮
    //---------
    delay(50000); //兩聲短“滴”聲
    audio_out=0;
    delay(50000);
    audio_out=1;
    delay(50000);
    audio_out=0;
    delay(50000);
    audio_out=1;
    //---------
    cnt_state=1; //下一狀態處于4秒計時的狀態
    TR0=1; //啟動定時
    }
    else
    { if (error_num2)
    {error_num++; //輸入錯誤次數小于3次時,沒錯一次error_num增一
    pw_error=0; //密碼錯誤指示燈亮
    //-----------
    delay(20000);//一聲長“滴”聲,提示錯誤
    audio_out=0;
    delay(60000);
    audio_out=1;
    //-----------
    init_variant();//清除所有輸入,等待下一次輸入
    }
    else //輸入錯誤次數超過3次
    { alarm_out=0; //報警燈亮
    pw_error=0; //密碼錯誤指示燈亮
    error_num=0; //密碼輸入錯誤次數清零
    //----------
    audio_out=0; //長鳴聲報警
    delay(60000);
    delay(60000);
    delay(60000);
    delay(60000);
    delay(60000);
    delay(60000);
    delay(60000);
    delay(60000);
    delay(60000);
    audio_out=1;
    //-------------
    TR1=1; //打開定時器計時
    cnt_state=2; //下一狀態處于15秒計時的狀態
    }
    }
    break;
    case 7://取消鍵
    init_variant();
    break;
    }
    }
    }
    led_show();
    }
    }
    //-----程序結束-----------------

    本文引用地址:http://www.czjhyjcfj.com/article/170863.htm

    電路圖文章專題:電路圖符號大全


    電路圖符號相關文章:電路圖符號大全



    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 宜川县| 隆安县| 历史| 澄城县| 常州市| 楚雄市| 九龙城区| 奎屯市| 上栗县| 张家界市| 托克逊县| 寿阳县| 汉源县| 呼玛县| 迁西县| 县级市| 云安县| 乐至县| 宝坻区| 崇阳县| 乡城县| 凉城县| 治县。| 贵德县| 麦盖提县| 文水县| 慈溪市| 铁岭市| 马公市| 太保市| 延津县| 龙江县| 那坡县| 高淳县| 那曲县| 阳新县| 游戏| 中超| 南开区| 江城| 泰顺县|