基于單片機控制的電子密碼鎖
三、電路的功能單元設計
1.開(kāi)鎖機構
通過(guò)單片機送給開(kāi)鎖執行機構,電路驅動(dòng)電磁鎖吸合,從而達到開(kāi)鎖的目的。其原理如圖2-1所示。
圖3-1密碼鎖開(kāi)鎖機構示意圖
當用戶(hù)輸入的密碼正確而且是在規定的時(shí)間(普通用戶(hù)要求在12s內輸入正確的密碼,管理員要求在5s輸入正確的密碼)輸入的話(huà),單片機便輸出開(kāi)門(mén)信號,送到開(kāi)鎖驅動(dòng)電路,然后驅動(dòng)電磁鎖,達到開(kāi)門(mén)的目的。其實(shí)際電路如圖2-2所示。
電路驅動(dòng)和開(kāi)鎖兩級組成。由D5、R1、T10組成驅動(dòng)電路,其中T10可以選擇普通的小功率三極管如9014、9018都可以滿(mǎn)足要求。D5作為開(kāi)鎖的提示;由D6、C24、T11組成。其中D6、C24是為了消除電磁鎖可能產(chǎn)生的反向高電壓以及可能產(chǎn)生的電磁干擾。T11可選用中功率的三極管如8050,電磁鎖的選用要視情況而定,但是吸合力要足夠且由一定的余量。
在本次設計中,基于節省材料的原則,暫時(shí)用發(fā)光二極管代替電磁鎖,發(fā)光管亮,表示開(kāi)鎖;滅,表示沒(méi)有開(kāi)鎖。
2.按鍵電路設計
由于設計要求使用矩陣鍵盤(pán),所以本設計就采用行列式鍵盤(pán),同時(shí)也能減少鍵盤(pán)與單片機接口時(shí)所占用的I/O線(xiàn)的數目,在按鍵比較多的時(shí)候,通常采用這樣方法。其原理如圖2-3所示。
圖3-3 行列式鍵盤(pán)原理電路圖
每一條水平(行線(xiàn))與垂直線(xiàn)(列線(xiàn))的交叉處不相通,而是通過(guò)一個(gè)按鍵來(lái)連通,利用這種行列式矩陣結構只需要N條行線(xiàn)和M條列線(xiàn),即可組成具有N×M個(gè)按鍵的鍵盤(pán)。
在這種行列式矩陣鍵盤(pán)非鍵盤(pán)編碼的單片機系統中,鍵盤(pán)處理程序首先執行等待按鍵并確認有無(wú)按鍵按下的程序段。
當確認有按鍵按下后,下一步就要識別哪一個(gè)按鍵按下。對鍵的識別通常有兩種方法:一種是常用的逐行掃描查詢(xún)法;另一種是速度較快的線(xiàn)反轉法。
對照圖2-3所示的44鍵盤(pán),說(shuō)明線(xiàn)反轉個(gè)工作原理。
首先辨別鍵盤(pán)中有無(wú)鍵按下,有單片機I/O口向鍵盤(pán)送全掃描字,然后讀入行線(xiàn)狀態(tài)來(lái)判斷。方法是:向行線(xiàn)輸出全掃描字00H,把全部列線(xiàn)置為低電平,然后將列線(xiàn)的電平狀態(tài)讀入累加器A中。如果有按鍵按下,總會(huì )有一根行線(xiàn)電平被拉至低電平從而使行線(xiàn)不全為1。
判斷鍵盤(pán)中哪一個(gè)鍵被按下使通過(guò)將列線(xiàn)逐列置低電平后,檢查行輸入狀態(tài)來(lái)實(shí)現的。方法是:依次給列線(xiàn)送低電平,然后查所有行線(xiàn)狀態(tài),如果全為1,則所按下的鍵不在此列;如果不全為1,則所按下的鍵必在此列,而且是在與零電平行線(xiàn)相交的交點(diǎn)上的那個(gè)鍵。
評論