【正文】
4 X 4 VCC 7 鍵盤。 在這種行列式矩陣鍵盤非鍵盤編碼的單片機(jī)系統(tǒng)中,鍵盤處理程序首先執(zhí)行等待按鍵并確認(rèn)有無按鍵按下的程序段。 當(dāng)確認(rèn)有按鍵按下后,下一步就要識(shí)別哪一個(gè)按鍵按下。對(duì)鍵的識(shí)別通常有兩種方法:一種是常用的逐行掃描查詢法;另一種是速度較快的線反轉(zhuǎn)法。 對(duì)照圖 3- 3 所示的 4 4 鍵盤,說明線反轉(zhuǎn)個(gè)工作原理。 首先辨別鍵盤中有無鍵按下,有單片機(jī) I/O 口向鍵盤送全掃描字,然后讀入行線狀態(tài)來判斷。方法是:向行線輸出全掃描字 00H,把全部列線置為低電平,然后將列線的電平狀態(tài)讀入累加器 A 中。如 果有按鍵按下,總會(huì)有一根行線電平被拉至低電平從而使行線不全為 1。 判斷鍵盤中哪一個(gè)鍵被按下使通過將列線逐列置低電平后,檢查行輸入狀態(tài)來實(shí)現(xiàn)的。方法是:依次給列線送低電平,然后查所有行線狀態(tài),如果全為 1,則所按下的鍵不在此列;如果不全為 1,則所按下的鍵必在此列,而且是在與零電平行線相交的交點(diǎn)上的那個(gè)鍵。按鍵的操作面板如圖 3- 5 所示。共計(jì)數(shù)字鍵 10 個(gè),功能鍵 6 個(gè)。鍵盤上還有 3 個(gè)指示燈和一個(gè)蜂鳴器。 圖 3- 5 按鍵操作面板示意圖 10 個(gè)數(shù)字鍵用來輸入密碼, 另外 6 個(gè)功能鍵分別是: CLR、 EN、 F F F F4。其中 CLR 鍵的功能是當(dāng)輸入密碼錯(cuò)誤的時(shí)候,清除前面已經(jīng)輸入的數(shù)據(jù),重新輸入。EN 鍵的功能是確認(rèn)輸入的密碼。 F1 是管理模式切換鍵,當(dāng)用戶不小心三次輸入密碼都沒有正確,鍵盤被鎖定,這個(gè)時(shí)候就可以啟動(dòng)管理模式,使用管理員的密碼來開門。 F2CLR 0 1 EN 5 9 F4 4 8 F3 3 7 F2 2 6 F1 L1 L2 L3 8 是用來進(jìn)入修改密碼的狀態(tài)。 F3 用來關(guān)閉顯示器,一來可以節(jié)省電量,另外也可以防止不法分子偷窺密碼。 F4 用來作電鈴。 上面的 3 個(gè)指示燈 L L L3 是用來指示操作的狀態(tài): L1 鎖定及輸入指示狀態(tài)燈,正常的情況下顯示紅色,當(dāng)鍵 盤動(dòng)作的時(shí)候, L1 燈開始閃動(dòng),當(dāng)鍵盤處于鎖定狀態(tài)時(shí),指示燈也顯示紅色。 L2 開門指示燈,當(dāng)用戶在規(guī)定的時(shí)間內(nèi)正確的輸入了密碼,此燈轉(zhuǎn)變?yōu)榫G色,表示開門,否則不顯示。 L3 是管理員狀態(tài)指示燈,當(dāng)按下 F1 后,指示燈自動(dòng)點(diǎn)亮。 面板上還有一個(gè)蜂鳴器,其中一個(gè)功能是用來指示操作的按鍵是否在成功的按下;另外一個(gè)功能是當(dāng)用戶輸入密碼錯(cuò)誤的次數(shù)超過了 3 次,鳴笛以示報(bào)警。 顯示電路設(shè)計(jì) 本系統(tǒng)設(shè)計(jì)的顯示電路是為了給使用者以提示而設(shè)置的。考慮到為了節(jié)約單片機(jī)的口資源,本系統(tǒng)的顯示采用串行顯示的方式,只使用單片機(jī)的一個(gè)串行 口,就可以完成單片機(jī)的顯示功能,顯示電路的電路原理圖如圖 3- 6 所示。 電路設(shè)定:當(dāng)程序檢測在 5 分鐘內(nèi)沒有按鍵操作的時(shí)候,就關(guān)閉顯示。這個(gè)功能使用程序來實(shí)現(xiàn)的,一旦沒有按鍵動(dòng)作就啟動(dòng)一個(gè)定時(shí)器,檢測在 5 分鐘內(nèi)沒有按鍵動(dòng)作的時(shí)候,啟動(dòng)一個(gè)程序,關(guān)閉顯示,這樣可以達(dá)到節(jié)省電能的目的。 從單片機(jī)串口輸出的信號(hào)先送到左邊的移位寄存器( 74HC164) ,由于移位脈沖的作用,使數(shù)據(jù)向右移,達(dá)到顯示的目的。移位寄存器 74HC164 還兼作數(shù)碼管的驅(qū)動(dòng),插頭 1( header1)接電源,插頭 2( header2)接數(shù)據(jù)和脈沖輸出端 。電路中的三個(gè)整流管D1~D3 的作用是降低數(shù)碼管的工作電壓,增加其使用壽命 。 A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9I C 1A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9I C 2A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9I C 3A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9I C 4A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9I C 5A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9I C 612H E A D E R 21 2H E A D E R 1v c cabfcgdeDPY1 2 3 4 5 6 7a b c d e f g8dpdp9 L E D 0abfcgdeDPY1 2 3 4 5 6 7a b c d e f g8dpdp9 L E D 1abfcgdeDPY1 2 3 4 5 6 7a b c d e f g8dpdp9 L E D 2abfcgdeDPY1 2 3 4 5 6 7a b c d e f g8dpdp9 L E D 3abfcgdeDPY1 2 3 4 5 6 7a b c d e f g8dpdp9 L E D 4abfcgdeDPY1 2 3 4 5 6 7a b c d e f g8dpdp9 L E D 5Cd1d2d3 圖 3- 6 顯示器原理圖 顯示器主顯示幾個(gè)字符,給用戶提供指示見圖 3- 7 所示 。 9 圖 3- 7 a 關(guān)閉狀態(tài) 圖 3- 7 b 開鎖狀態(tài) 圖 3- 7 c 密碼輸入錯(cuò)誤后的提示 圖 3- 7 d 密碼在規(guī)定的時(shí)間內(nèi)輸入錯(cuò)誤次數(shù)超過 3 次后的鎖定狀態(tài) 掉電存儲(chǔ)單元的設(shè)計(jì) 掉電存儲(chǔ)單元的作用是在電源斷開的時(shí)候,存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息。 AT24C02 是ATMEL 公司的 2KB 字節(jié)的電可擦除存儲(chǔ)芯片, 采用兩線串行的總線和單片機(jī)通訊,電壓最低可以到 ,額定電流為 1mA,靜態(tài)電流 10Ua(),芯片內(nèi)的資料可以在斷電的情況下保存 40 年以上,而且采用 8 腳的 DIP 封裝,使用方便。其電路如圖 3- 8 所示。 O F F 2 10 NC1NC2NC3GND4S D A5S C L6WP7V C C8U4A T 2 4C 02AGNDV C C串行存儲(chǔ)模塊R8R 10接 P 接 P 圖 3- 8 掉電存儲(chǔ)電路原理圖 圖中 R R10 是上拉電阻,其作用是減少 AT24C02 的靜態(tài)功耗,由于 AT24C02 的數(shù)據(jù)線和地址線是復(fù)用的,采用串口的方式傳送數(shù)據(jù),所以只用兩根線 SCL(移位脈沖)和 SDA(數(shù)據(jù) /地址)與單片機(jī)傳送數(shù)據(jù)。 密碼鎖的電源電路設(shè)計(jì) 為了防 止停電情況的發(fā)生,本電路后備了 UPS 電源,它包括市電供電電路,停電檢測電路,電子開關(guān)切換電路,蓄電池充電電路和蓄電池組成。電源電路圖如圖 3- 9所示。 12J P 112J P 2D1D2D3D4 D5R11KC13 3 0 0C20 .1C33 3 0 01 2 37 8 0 5 圖 3- 9 市電供電電路 220V 市電通過變壓器降壓成 12V 的交流電 ,再經(jīng)過整流橋整流 ,7805 穩(wěn)壓到 5V 送往電子切換電路,由于本電路功耗較少,所以選用 10W 的小型變壓器。 由 R8, R9, R6, R7 及 IC14 構(gòu)成電壓比較器,正常情況下, V+V IC14 輸出高電平,繼電器的常閉觸點(diǎn)和市電相連;當(dāng)市電斷開, V+V IC14 輸出低電平,由 T3, T4構(gòu)成 的達(dá)林頓管使繼電器 J 開啟,將其常開觸點(diǎn)將蓄電池和電路相連,實(shí)現(xiàn)市電和蓄電池供電的切換,保證電子密碼鎖的正常工作(視電池容量而定持續(xù)時(shí)間)。其電路圖如下圖 3- 10 所示: 11 R850KR940KR730KR620KT39018R 10T49014123I C 1 4741繼電器蓄電池供電5V 直 流電源 A1蓄電池 A 25V 直流電源 A1蓄電池 A2VCC常閉常開 圖 3- 10 停電檢測及電子開關(guān)切換電路 T1, T2 構(gòu)成的蓄電池自動(dòng)充電電路,它在電池充滿后自動(dòng)停止充電,其中 D1 亮為正在充電, D2 為工作指示。由 R4, R5, T1 構(gòu)成電壓檢測電路,蓄電池電壓低,則 T1,T2 導(dǎo)通,實(shí)現(xiàn)對(duì)其充電;充滿后, T1, T2 截止,停止充電,同時(shí) D1 熄滅,電路中 C4的作用是濾除干擾信號(hào)。其電路圖如圖 3- 11 所示: R5470R23KR13KT19014D2D1C43C G 21R43K6V 蓄電池電源 A26V 充 電電源蓄電池 圖 3- 11 蓄電池自動(dòng)充電電路 設(shè)計(jì)總框圖 圖 3- 12 總體設(shè)計(jì)框圖 設(shè)計(jì)總體電路圖 開鎖控制電路 89S51 單片機(jī) AT24C02 掉電存儲(chǔ) 串口顯示電路 矩陣 鍵盤 控制 指示電路 輸入錯(cuò)誤鎖定鍵盤 延時(shí)報(bào)警控制電路 電源電路及 UPS 電路 12 P 0 .732P 0 .633P 0 .534P 0 .435P 0 .336P 0 .237P 0 .138P 0 .039V C C40P 2 .021P 2 .122P 2 .223P 2 .324P 2 .425P 2 .526P 2 .627P 2 .728A L E / P R O G30P S E N29E A / V P P31P 1 .01P 1 .12P 1 .23P 1 .34P 1 .45P 1 .5/ M O S I6P 1 .6/ M I S O7P 1 .7/ S C K8R E S T9P 3 .0/ R X D10P 3 .1/ T X D