單片機(jī)控制的密碼鎖設(shè)計(jì)。
AT89S52 單片機(jī)P1 引腳外接獨(dú)立式按鍵S1-S8,分別代表數(shù)字鍵 0-5、確定鍵、取消鍵。單片機(jī)從P3.0-P3.3 輸出4 個信號,分別為1 個電磁開鎖驅(qū)動信號和密碼錯 誤指示、報(bào)警輸出、已開鎖指示信號,分別用發(fā)光二極管L1-L4 指示。P3.4 接一有源蜂鳴器,用于 實(shí)現(xiàn)提示音。 基本要求:
(1)初始密碼為123450,輸完后按確定鍵開鎖,取消鍵清除所有輸入,每次按鍵有短“滴”聲 按鍵提示音。
(2)密碼輸入正確后,輸出一個電磁鎖開鎖信號與已開鎖信號,并發(fā)出兩聲短“滴”聲提示。 4 秒后開鎖信號與已開鎖指示清零。
(3)密碼輸入錯誤時,發(fā)出一聲長“滴”聲錯誤指示提示音,并密碼錯誤指示燈亮,三次密碼 錯誤時,發(fā)出長鳴聲報(bào)警,并密碼錯誤指示燈亮,報(bào)警指示燈亮,此后15 秒內(nèi)無法再次輸入密碼, 15 秒過后,清除所有報(bào)警和指示。
(4)5 秒內(nèi)無任何操作后,清除所有輸入內(nèi)容,等待下次輸入。
整體程序設(shè)計(jì)思想:
程序分為主程序和中斷服務(wù)程序兩個主要部分,主程序完成變量和單片機(jī)特殊功能寄存器的初 始化后,進(jìn)入一個循環(huán)結(jié)構(gòu)。在循環(huán)中,首先判斷有無按鍵按下,若有按鍵則判斷是否數(shù)字鍵還是 功能鍵,根據(jù)按鍵的情況執(zhí)行相應(yīng)的功能。然后根據(jù)密碼是否正確的判斷情況,執(zhí)行相應(yīng)的操作。 循環(huán)中最后將需要顯示的內(nèi)容通過動態(tài)掃描在數(shù)碼管上顯示。
中斷服務(wù)程序只要實(shí)現(xiàn)三個狀態(tài)的計(jì)時,待機(jī)時需要計(jì)時5 秒,密碼正確需要計(jì)時5s,密碼3 次輸入錯誤需要計(jì)時15 秒。當(dāng)前處于何種計(jì)時,由主程序根據(jù)密碼判斷結(jié)果來決定。
全文內(nèi)容請閱讀:密碼鎖電路設(shè)計(jì)(單片機(jī)開發(fā)案例),附源代碼
歡迎光臨 (http://www.torrancerestoration.com/bbs/) | Powered by Discuz! X3.1 |