更加可靠的技術實現大門的管理。在我國電子鎖整體水平尚處于國際上70年代左右,電子密碼鎖的成本還很高,市場上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙式電子鎖已引進國際先進水平,現國內有幾個廠生產供應市場。但國內自行研制開發的電子鎖,其市場結構尚未形成,應用還不廣泛。國內的不少企業也引進了世界上先進的技術,發展前景非常可觀。希望通過不斷的努力,使電子密碼鎖在我國也能得到廣泛應用
1.2、電子密碼鎖發展趨勢 電子密碼鎖應用于金融業,其根本的作用是“授權”,即被“授權”的人才可以存取錢、物。廣義上講,金融業的“授權”主要包括以下三種層次的內容:1、授予保管權,如使用保管箱、保險箱和保險柜;2、授予出入權,如出入金庫、運鈔車和保管室;3、授予流通權,如自動存取款。目前,金融行業電子密碼鎖的應用主要集中在前兩個層面上。下面將介紹幾種在金融行業中使用較多的電子密碼鎖以及它們的技術發展方向。當然,以上所說的授權技術再高超,都必須由精良的“鎖具”擔當承載結構部件,實現開啟、閉鎖的功能,而且承擔實體防護作用,抵抗住或盡量延遲破壞行為,讓電子密碼鎖“軟、硬不吃”。一般情況下,鎖具防盜的關鍵是鎖身外殼、閉鎖的部件的強度、鎖止型式、配合間隙和布局。提高電子密碼鎖之防護能力的必然途徑是報警,在金融業的許多場所有人值守、有電視監控,具有報警功能,可以綜合物理防范和人力防范兩種作用。報警的前提是具備探測功能,根據電子密碼鎖的使用場所和防護要求,可選擇多種多樣的探測手段。在中國的城市金融業中,實現聯網報警已經成為對各金融網點的基本要求。根據國內外的實踐經驗,金融業實行安全防范風險等級很有必要,即依據使用的防盜報警器材的性能、安裝布局和人員值守狀況等,可以評估被防護物或區域的防護能力,得出風險等級,其中,電子密碼鎖的性能至關重要。
由于數字、字符、圖形圖像、人體生物特征和時間等要素均可成為鑰匙的電子信息,組合使用這些信息能夠使電子密碼鎖獲得高度的保密性,如防范森嚴的金庫,需要使用復合信息密碼的電子密碼鎖,這樣對盜賊而言是“道高一尺、魔高一丈”。組合使用信息也能夠使電子密碼鎖獲得無窮擴展的可能,使產品多樣化,對用戶而言是“千挑百選、自得其所”。
第二章 總體設計方案的確定2.1 電子密碼鎖設計的具體要求(1)本設計為了防止密碼被竊取要求在輸入密碼時在LCD屏幕上顯示*號。
(2)設計開鎖密碼位六位密碼的電子密碼鎖。
(3)能夠LCD顯示在密碼正確時顯示OPEN,密碼錯誤時顯示 ERROR,輸入密碼時顯示INPUT PASSWORD。
(4)實現輸入密碼錯誤超過限定的三次電子密碼鎖定。
(5)4×4的矩陣鍵盤其中包括0-9的數字鍵、*、#和A-D的功能鍵
(6)本產品具備報警功能,當輸入密碼錯誤時蜂鳴器響并且LED燈亮。
- (7)密碼可以由用戶自己修改設定(只支持6位密碼),修改密碼之前必須再次輸入密碼,在輸入新密碼時候需要二次確認,以防止誤操作 。
2.2總體設計方案選定方案一:采用數字電路控制。
用以74LS112雙JK觸發器構成的數字邏輯電路作為密碼鎖的核心控制,共設了9個用戶輸入鍵,其中只有4個是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤輸入電路自動清零,原先輸入的密碼無效,需要重新輸入;如果用戶輸入密碼的時間超過10秒(一般情況下,用戶不會超過10秒,若用戶覺得不便,還可以修改)電路將報警20秒,若電路連續報警三次,電路將鎖定鍵盤2分鐘,防止他人的非法操作。采用數字電路設計的方案好處就是設計簡單但控制的準確性和靈活性差。故不采用。
方案二:采用一種是用以STC89C51為核心的單片機控制方案。
選用單片機STC89C51 作為本設計的核心元件,利用單片機靈活的編程設計和豐富的IO端口,及其控制的準確性,實現基本的密碼鎖功能。在單片機的外圍電路外接輸入鍵盤用于密碼的輸入和一些功能的控制,外接LCD1602顯示器用于顯示作用。其原理如下圖2.1所示:

圖2.1 單片機控制密碼鎖原理圖
可以看出方案二控制靈活準確性好且保密性強還具有擴展功能,根據現實生活的需要此次設計采用此方案
第三章 系統硬件設計
3.1 設計原理本設計主要由單片機、矩陣鍵盤、液晶顯示器和密碼存儲等部分組成。其中矩陣鍵盤用于輸入數字密碼和進行各種功能的實現。由用戶通過連接單片機的矩陣鍵盤輸入密碼,后經過單片機對用戶輸入的密碼與自己保存的密碼進行對比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開鎖電路或者報警電路控制開鎖還是報警,實際使用時只要將單片機的負載由繼電器換成電子密碼鎖的電磁鐵吸合線圈即可,當然也可以用繼電器的常開觸點去控制電磁鐵吸合線圈。
本系統共有兩部分構成,即硬件部分與軟件部分。其中硬件部分由電源輸入部分、鍵盤輸入部分、密碼存儲部分、復位部分、晶振部分、顯示部分、報警部分、開鎖部分組成,軟件部分對應的由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、啟動程序、關閉程序、建功能程序、密碼設置程序、EEPROM讀寫程序和延時程序等組成。其原理框圖如圖3.1所示。

3.1 電子密碼鎖原理框圖
3.2 單片機STC89C51簡介STC89C51是一種低功耗、高性能CMOS8位微控制器,具有 4K 在系統可編程Flash 存儲器。在單芯片上,擁有靈巧的8 位CPU 和在系統可編程Flash,使得STC89C51為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案。 具有以下標準功能: 4k字節Flash,512字節RAM, 32 位I/O 口線,看門狗定時器,2個16 位 定時器/計數器,一個6向量2級中斷結構,全雙工串行口。另外 STC89C51 可降至0Hz 靜態邏輯操作,支持2種軟件可選擇節電模式。空閑模式下,CPU 停止工作,允許RAM、定時器/計數器、串口、中斷繼續工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。最高運作頻率35Mhz,6T/12T可選。STC89C51主要功能如表1所示,其DIP封裝如圖2所示
表1:STC89C51主要功能
STC89C52引腳介紹
① 主電源引腳(2根)
VCC(Pin40):電源輸入,接+5V電源
GND(Pin20):接地線
②外接晶振引腳(2根)
XTAL1(Pin19):片內振蕩電路的輸入端
XTAL2(Pin20):片內振蕩電路的輸出端
③控制引腳(4根)
RST/VPP(Pin9):復位引腳,引腳上出現2個機器周期的高電平將使單片機復位。
ALE/PROG(Pin30):地址鎖存允許信號
PSEN(Pin29):外部存儲器讀選通信號
EA/VPP(Pin31):程序存儲器的內外部選通,接低電平從外部程序存儲器讀指令,如果接高電平則從內部程序存儲器讀指令。
④可編程輸入/輸出引腳(32根)
STC89C52單片機有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個口有8位(8根引腳),共32根。
P0口(Pin39~Pin32):8位雙向I/O口線,名稱為P0.0~P0.7
P1口(Pin1~Pin8):8位準雙向I/O口線,名稱為P1.0~P1.7
P2口(Pin21~Pin28):8位準雙向I/O口線,名稱為P2.0~P2.7
P3口(Pin10~Pin17):8位準雙向I/O口線,名稱為P3.0~P3.7
作頻率35Mhz,6T/12T可選。
圖3.2 STC89C51 DIP封裝圖
最小系統包括單片機及其所需的必要的電源、時鐘、復位等部件,能使單片機始終處于正常的運行狀態。電源、時鐘等電路是使單片機能運行的必備條件,可以將最小系統作為應用系統的核心部分,通過對其進行存儲器擴展、A/D擴展等,使單片機完成較復雜的功能。
STC89C51是片內有ROM/EPROM的單片機,因此,這種芯片構成的最小系統簡單﹑可靠。用STC89C52單片機構成最小應用系統時,只要將單片機接上時鐘電路和復位電路即可,結構如圖2-3所示,由于集成度的限制,最小應用系統只能用作一些小型的控制單元。

圖3.3單片機最小系統原理框圖
(1) 時鐘電路
STC89C51單片機的時鐘信號通常有兩種方式產生:一是內部時鐘方式,二是外部時鐘方式。內部時鐘方式如圖2-4所示。在STC89C51單片機內部有一振蕩電路,只要在單片機的XTAL1(18)和XTAL2(19)引腳外接石英晶體(簡稱晶振),就構成了自激振蕩器并在單片機內部產生時鐘脈沖信號。圖中電容C1和C2的作用是穩定頻率和快速起振,電容值在5~30pF,典型值為30pF。晶振CYS的振蕩頻率范圍在1.2~12MHz間選擇,典型值為12MHz和6MHz。

圖3.4 STC89C51內部時鐘電路
(2) 復位電路
當在STC89C51單片機的RST引腳引入高電平并保持2個機器周期時,單片機內部就執行復位操作(若該引腳持續保持高電平,單片機就處于循環復位狀態)。
最簡單的上電自動復位電路中上電自動復位是通過外部復位電路的電容充放電來實現的。只要Vcc的上升時間不超過1ms,就可以實現自動上電復位。
除了上電復位外,有時還需要按鍵手動復位。本設計就是用的按鍵手動復位。按鍵手動復位有電平方式和脈沖方式兩種。其中電平復位是通過RST(9)端與電源Vcc接通而實現的。

圖3.5 STC89C51復位電路
(3) STC89C51中斷技術概述
中斷技術主要用于實時監測與控制,要求單片機能及時地響應中斷請求源提出的服務請求,并作出快速響應、及時處理。這是由片內的中斷系統來實現的。當中斷請求源發出中斷請求時,如果中斷請求被允許,單片機暫時中止當前正在執行的主程序,轉到中斷服務處理程序處理中斷服務請求。中斷服務處理程序處理完中斷服務請求后,再回到原來被中止的程序之處(斷點),繼續執行被中斷的主程序。
圖2-6為整個中斷響應和處理過程。
圖3.6 中斷響應和處理過程
圖3.6 中斷過程
如果單片機沒有中斷系統,單片機的大量時間可能會浪費在查詢是否有服務請求發生的定時查詢操作上。采用中斷技術完全消除了單片機在查詢方式中的等待現象,大大地提高了單片機的工作效率和實時性。
3.3 AT24C02存儲芯片AT24C02是美國Atmel公司的低功耗CMOS型E2PROM,內含256×8位存儲空間,具有工作電壓寬(2.5~5.5 V)、擦寫次數多(大于10000次)、寫入速度快(小于10 ms)、抗干擾能力強、數據不易丟失、體積小等特點。而且他是采用了I2C總線式進行數據讀寫的串行器件,占用很少的資源和I/O線,并且支持在線編程,進行數據實時的存取十分方便。AT24C02中帶有的片內地址寄存器。每寫入或讀出一個數據字節后,該地址寄存器自動加1,以實現對下一個存儲單元的讀寫。所有字節均以單一操作方式讀取。為降低總的寫入時間,一次操作可寫入多達8個字節的數據。I2C總線是一種用于IC器件之間連接的二線制總線。他通過SDA(串行數據線)及SCL(串行時鐘線)兩根線在連到總線上的器件之間傳送信息,并根據地址識別每個器件。AT24C02正是運用了I2C規程,使用主/從機雙向通信,主機(通常為單片機)和從機(AT24C02)均可工作于接收器和發送器狀態。主機產生串行時鐘信號(通過SCL引腳)并發出控制字,控制總線的傳送方向,并產生開始和停止的條件。無論是主機還是從機,接收到一個字節后必須發出一個確認信號ACK。AT24C02的控制字由8位二進制數構成,在開始信號發出以后,主機便會發出控制字,以選擇從機并控制總線傳送的方向。

SOIC PDIP
圖3.7 24C02的兩種引腳圖
圖3.8 AT24C02的電路接線圖
圖中AT24C02的1、2、3腳是三條地址線,用于確定芯片的硬件地址。第8腳和第4腳分別為正、負電源。第5腳SDA為串行數據輸入/輸出,數據通過這條雙向I2C總線串行傳送,第6腳SCL為串行時鐘輸入線, SDA和SCL都需要和正電源間各接一個10 K的電阻上拉。第7腳需要接地。
24C02中帶有片內地址寄存器。每寫入或讀出一個數據字節后,該地址寄存器自動加1,以實現對下一個存儲單元的讀寫。所有字節均以單一操作方式讀取。為降低總的寫入時間,一次操作可寫入多達8個字節的數據。
3.4 LCD顯示模塊LCD1602A 是一種工業字符型液晶,能夠同時顯示16x02 即32個字符。(16列2行)。在日常生活中,我們對液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產品的通過器件,如在計算器、萬用表、電子表及很多家用電子產品中都可以看到,顯示的主要是數字、專用符號和圖形。在單片機的人機交流界面中,一般的輸出方式有以下幾種:發光管、LED數碼管、液晶顯示器。發光管和LED數碼管比較常用,軟硬件都比較簡單。
在單片機系統中應用晶液顯示器作為輸出器件有以下幾個優點:
由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器畫質高且不會閃爍。
液晶顯示器都是數字式的,和單片機系統的接口更加簡單可靠,操作更加方便。
液晶顯示器通過顯示屏上的電極控制液晶分子狀態來達到顯示的目的,在重量上比相同顯示面積的傳統顯示器要輕得多。
相對而言,液晶顯示器的功耗主要消耗在其內部的電極和驅動IC上,因而耗電量比其它顯示器要少得多。
(1)引腳說明:
第1腳:VSS為地電源。
第2腳:VDD接5V正電源。
第3腳:VL為液晶顯示器對比度調整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產生“鬼影”,使用時可以通過一個10K的電位器調整對比度。
第4腳:RS為寄存器選擇,高電平時選擇數據寄存器、低電平時選擇指令寄存器。
第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和R/W共同為低電平時可以寫入指令或者顯示地址,當RS為低電平
R/W為高電平時可以讀忙信號,當RS為高電平R/W為低電平時可以寫入數據。
第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執行命令。
第7~14腳:D0~D7為8位雙向數據線。
第15腳:背光源正極。
第16腳:背光源負極。
(2)1602LCD的RAM地址映射以及標準字庫表
LCD1602液晶模塊內部的字符發生存儲器已經存儲了160個不同的點陣字符圖形,這些字符圖有:阿拉伯數字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我們就能看到字母。
它的讀寫操作、屏幕和光標的操作都是通過指令編程來實現的(說明:1為高電平,0為低電平)。
指令1:清顯示,指令碼01H,光標復位到地址00H位置。
指令2:光標復位,光標返回到地址00H 。
指令3:光標和顯示模式設置 I/D:光標移動方向,高電平右移,低電平左移 。S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效 。
指令4:顯示開關控制。 D:控制整體顯示的開與關,高電平表示開顯示,低電平表示關顯示。 C:控制光標的開與關,高電平表示有光標,低電平表示無光標。 B:控制光標是否閃爍,高電平閃爍,低電平不閃爍 。
指令5:光標或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標 。
指令6:功能設置命令 DL:高電平時為4位總線,低電平時為8位總線。 N:低電平時為單行顯示,高電平時雙行顯示。 F:低電平時顯示5X7的點陣字符,高電平時顯示5x10的點陣字符 (有些模塊是 DL:高電平時為8位總線,低電平時為4位總線)。
指令7:字符發生器RAM地址設置 。
指令8:DDRAM地址設置 。
指令9:讀出忙信號和光標地址。 BF為忙標志位,高電平表示忙,此時模塊不能接收命令或者數據,如果為低電平表示不忙,模塊就能接收相應的命令或者數據。
指令10:寫數據 。
指令11:讀數據 。
液晶顯示模塊是一個慢顯示器件,所以在執行每條指令之前一定要確認模塊的忙標志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符。
1602 內部顯示地址如圖3-6所示:
圖3.9 1602內部顯示地址
例如第二行第一個字符的地址是40H,那么是否直接寫入40H 就可以將光標定位在第二行第 一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位D7恒定為高電平1,所以實際寫入的數據應該是01000000B(40H)+10000000B(80H)=11000000B(C0H) 。在對液晶模塊的初始化中要先設置其顯示模式,在液晶模塊顯示字符時光標是自動右移的,無需人工干預。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態。1602 液晶模塊內部的字符發生存儲器(CGROM)已經存儲了160個不同的點陣字符圖形,如下圖所示,這些字符有:阿拉伯數字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H 中的點陣字符圖形顯示出來,我們就能看到字母“A”。
液晶顯示的原理是利用液晶的物理特性, 通過電壓對其顯示區域進行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規模集成電路直接驅動、易于實現全彩色顯示的特點,目前已經被廣泛應用在便攜式電腦、數字攝像機、PDA移動通信工具等眾多領域。

圖3.10 液晶顯示模塊電路圖
3.5 鍵盤設計本設計就采用行列式鍵盤,同時也能減少鍵盤與單片機接口時所占用的I/O線的數目,在按鍵比較多的時候,通常采用這樣方法。
每一條水平(行線)與垂直線(列線)的交叉處不相通,而是通過一個按鍵來連通,利用這種行列式矩陣結構只需要N條行線和M條列線,即可組成具有N×M個按鍵的鍵盤。
在這種行列式矩陣鍵盤非鍵盤編碼的單片機系統中,鍵盤處理程序首先執行等待按鍵并確認有無按鍵按下的程序段。
4×4矩陣鍵盤的工作原理
在鍵盤中按鍵數量較多時,為了減少I/O口的占用,通常將按鍵排列成矩陣形式,如圖5所示。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個按鍵加以連接。這樣,一個端口(如P1口)就可以構成4*4=16個按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數越多,區別越明顯,比如再多加一條線就可以構成20鍵的鍵盤,而直接用端口線則只能多出一鍵(9鍵)。由此可見,在需要的鍵數比較多時,采用矩陣法來做鍵盤是合理的。
掃描原理
把每個鍵都分成水平和垂直的兩端接入,比如說掃描碼是從垂直的入,那就代表那一行所接收到的掃描碼是同一個bit,而讀入掃描碼的則是水平,掃描的動作是先輸入掃描碼,再去讀取輸入的值,經過比對之后就可知道是哪個鍵被按下。
比如說掃描碼送入01111111,前面的0111是代表此時掃描第一行P1.0列,而后面的1111是讓讀取的4行接腳先設為VDD,若此時第一行的第三列按鍵被按下,那讀取的結果就會變成01111101(注意1111變成1101),其中LSB的第三個bit會由1變成0,這是因為這個按鍵被按下之后,會被垂直的掃描碼電位short,而把讀取的LSB的bit電位拉到0,此即為掃描原理。
由於這種按鍵是機械式的開關,當按鍵被按下時,鍵會震動一小段時間才穩定,為了避免讓單片機誤判為多次輸入同一按鍵,我們必須在偵測到有按鍵被按下,就Delay一小段時間,使鍵盤以達穩定狀態,再去判讀所按下的鍵,就可以讓鍵盤的輸入穩定。圖3.8為鍵盤整體模框圖:
圖3.8 鍵盤整體模框圖
3.6 聲音提示模塊蜂鳴器是一種一體化結構的電子訊響器,采用直流電壓供電,廣泛應用于計算機、打印機、復印機、報警器、電子玩具、汽車電子設備、電話機、定時器等電子產品中作發聲器件。 ;蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。蜂鳴器在電路中用字母“H”或“HA”(舊標準用“FM”、“LB”、“JD”等)表示。1.壓電式蜂鳴器 壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。有的壓電式蜂鳴器外殼上還裝有發光二極管。
多諧振蕩器由晶體管或集成電路構成。當接通電源后(1.5~15V直流工作電壓),多諧振蕩器起振,輸出1.5~2.5kHZ的音頻信號,阻抗匹配器推動壓電蜂鳴片發聲。
壓電蜂鳴片由鋯鈦酸鉛或鈮鎂酸鉛壓電陶瓷材料制成。在陶瓷片的兩面鍍上銀電極,經極化和老化處理后,再與黃銅片或不銹鋼片粘在一起。
電磁式蜂鳴器 電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動膜片及外殼等組成。
接通電源后,振蕩器產生的音頻信號電流通過電磁線圈,使電磁線圈產生磁場。振動膜片在電磁線圈和磁鐵的相互纏繞
蜂鳴器驅動電路一般都包含以下幾個部分:一個三極管、一個蜂鳴器、一個限流電阻。
蜂鳴器為發聲元件,在其兩端施加直流電壓(有源蜂鳴器)或者方波(無源蜂鳴器)就可以發聲,其主要參數是外形尺寸、發聲方向、工作電壓、工作頻率、工作電流、驅動方式(直流/方波)等。這些都可以根據需要來選擇。本設計采用有源蜂鳴器。

圖3.9 聲音報警電路
三極管Q1起開關作用,其基極的低電平使三極管飽和導通,使蜂鳴器發聲;而基極高電平則使三極管關閉,蜂鳴器停止發聲。
3.7 繼電器控制模塊電磁繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)釋放。這樣吸合、釋放,從而達到了在電路中的導通、切斷的目的。對于繼電器的“常開、常閉”觸點,可以這樣來區分:繼電器線圈未通電時處于斷開狀態的靜觸點,稱為“常開觸點”;處于接通狀態的靜觸點稱為“常閉觸點”。繼電器一般有兩股電路,為低壓控制電路和高壓工作電路。

圖3.12繼電器控制負載電路
電路中繼電器室通過PNP型三極管驅動,當閥值超過設定時,單片機會由高電平跳變成低電平,三極管導通繼電器吸合,繼電器起開關作用,可以驅動負載。
3.8 紅外接收模塊紅外遙控的發射電路是采用紅外發光二極管來發出經過調制的紅外光波;紅外接收電路由紅外接收二極管、三極管或硅光電池組成,它們將紅外發射器發射雕紅外光轉換為相應的電信號,再送后置放大器。
發射機一般由指令鍵(或操作桿)、指令編碼系統、調制電路、驅動電路、發射電路等幾部分組成。當按下指令鍵或推動操作桿時,指令編碼電路產生所需的指令編碼信號,指令編碼信號對載體進行調制,再由驅動電路進行功率放大后由發射電路向外發射經調制定指令編碼信號。
接收電路一般由接收電路、放大電路、調制電路、指令譯碼電路、驅動電路、執行電路(機構)等幾部分組成。接收電路將發射器發出的已調制的編碼指令信號接收下來,并進行放大后送解調電路,解調電路將已調制的指令編碼信號解調出來,即還原為編碼信號。指令譯碼器將編碼指令信號進行譯碼,最后由驅動電路來驅動執行電路實現各種指令的操作控制(機構)。
紅外線遙控是目前使用很廣泛的一種通信和遙控技術。由于紅外線遙控裝置具有體積小、功耗低、功能強、成本低等特點,因而,繼彩電、錄像機之后,在錄音機、音響設備、空凋機以及玩具等其它小型電器裝置上也紛紛采用紅外線遙控。工業設備中,在高壓、輻射、有毒氣體、粉塵等環境下,采用紅外線遙控不僅完全可*而且能有效地隔離電氣干擾。
紅外線是太陽光線中眾多不可見光線中的一種,由德國科學家霍胥爾于1800年發現,又稱為紅外熱輻射,他將太陽光用三棱鏡分解開,在各種不同顏色的色帶位置上放置了溫度計,試圖測量各種顏色的光的加熱效應。結果發現,位于紅光外側的那支溫度計升溫最快。因此得到結論:太陽光譜中,紅光的外側必定存在看不見的光線,這就是紅外線。也可以當作傳輸之媒界。 太陽光譜上紅外線的波長大于可見光線,波長為0.75~1000μm。紅外線可分為三部分,即近紅外線,波長為0.75~1.50μm之間;中紅外線,波長為1.50~6.0μm之間;遠紅外線,波長為6.0~l000μm 之間。圖 3.12為紅外遙控器及編碼。
圖3.13 紅外遙控器及編碼
一體化紅外線接收器是一種集紅外線接收和放大整形于一體,不需要任何外接元件,就能完成從紅外線接收到輸出與TTL電平信號兼容的所有工作,而體積又很小巧,它適合于各種紅外線遙控和紅外線數據傳輸,廣泛用于電視機、衛星接收機、VCD、DVD、音響、空調等家用電器中接收紅外信號。
圖3.14 一體化紅外接器電路
第四章 系統軟件設計4.1主程序模塊本系統軟件設計由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、鍵功能程序、密碼設置程序、EEPROM讀寫程序和延時程序等組成。主要程序設計流程圖如下所示:
圖4.1 主程序的流程圖
4.2 鍵盤掃描子程序
圖4.2 鍵盤掃描程序流程圖
4.3 系統模塊密碼設置子程序由于設計是分模塊化進行,所以子程序是整體軟件系統的組成部分,子程序不但可以使程序化整為零,使其復雜簡單化,同時也方便閱讀,修改等,每個功能模塊都有它自己的子程序,在本設計中是用LCD顯示數據,所以就要用到顯示子程序,設計中用的是矩陣鍵盤,所以就用到鍵盤掃描子程序,例如還有顯示初始化子程序、LCD忙檢測子程序、關閉狀態顯示子程序、開鎖狀態顯示子程序、密碼輸入及修改狀態顯示子程序、密碼輸入錯誤后的提示子程序等。如下圖為密碼修改子程序流程圖




圖4.3 設置密碼子程序
4.4開鎖子程序 

圖4.4 開鎖流程圖
4.4軟件調試在硬件支持的環境下,用proteus設計好的電路,Keil編好的程序編譯成芯片可識別的S51文件,利用PC機寫進proteus程序圖芯片內進行仿真測試,并對其出現的錯誤進行修改,由圖4.5~圖4.9可看出最終調試成功。
圖4.5 keil編譯程序成功
圖4.6 keil生成hex文件
圖4.7 proteus調用keil的hex文件進行仿真
圖4.8 仿真成功密碼正確
圖4.9 密碼正確黃燈亮
第五章 系統制作及調試5.1焊接注意事項:LCD的注意事項
1. 采用焊接方法將金屬基PIN安裝于LCD時,從玻璃末端到PCB的焊接位置的長度至少5mm,焊接溫度必須在260℃以下,且焊接時間必須在10秒以內,以免焊接過程中對裝置的損壞,確保焊接性能。在230℃,30秒條件下,90%的焊料須緊密附著于PIN上。
2. 對LCD基板或基PIN焊接位置的調整必須在安裝前完成。嚴禁猛烈移動基PIN,否則會機械地破壞LCD屏與基PIN之間的連接點。焊接時平放LCD,盡量不讓LCD受力。
3. 焊接LCD基板時,將其小心、平衡地插入PCB插槽,以避免損壞基PIN或LCD基板。
4. 焊接時,LCD基板不應長時間置于焊錫蒸汽中,清洗PCB時,必須避免污染LCD基板,否則可能損壞顯示器表面的偏光片及封口膠。
5. 顯示器表面的保護膜直到焊接完成才可揭掉,禁止手指及其它硬物接觸偏光片,禁止水和其他化學物質沾污裝置,因為這些物質會污染顯示器表面。
單片機焊接注意事項:
80s51單片機與其它單片機,dsp,arm芯片相比較而言是脆弱的,如果焊接時不小心就很可能把芯片損壞!建議用比較好的恒溫可調的烙鐵,功率在30瓦左右,溫度控制在260到300度,建議采用點焊而不用拉焊,焊接時烙鐵放在每個引腳的時間不能太長(最好低于3秒)。上邊提到的方法還不能確保芯片完好,對芯片有危害的還有帶電烙鐵的靜電感應!烙鐵質量不是太好的,焊接時可以把烙鐵電源插頭拔掉。
其他的電子器件焊接須知:
一般分四步驟進行。①準備焊接:清潔被焊元件處的積塵及油污,再將被焊元器件周圍的元器件左右掰一掰,讓電烙鐵頭可以觸到被焊元器件的焊錫處,以免烙鐵頭伸向焊接處時燙壞其他元器件。焊接新的元器件時,應對元器件的引線鍍錫。②加熱焊接:將沾有少許焊錫和松香的電烙鐵頭接觸被焊元器件約幾秒鐘。若是要拆下印刷板上的元器件,則待烙鐵頭加熱后,用手或銀子輕輕拉動元器件,看是否可以取下。③清理焊接面:若所焊部位焊錫過多,可將烙鐵頭上的焊錫甩掉(注意不要燙傷皮膚,也不要甩到印刷電路板上!),用光烙錫頭"沾"些焊錫出來。若焊點焊錫過少、不圓滑時,可以用電烙鐵頭"蘸"些焊錫對焊點進行補焊。④檢查焊點:看焊點是否圓潤、光亮、牢固,是否有與周圍元器件連焊的現象。
焊接流程按照附錄I所示的電子密碼鎖的硬件聯接原理圖按下列順序依次焊接:
(1)焊接單片機的晶振電路、復位電路等單片機的最小系統的外圍電路。
(2)焊接LCD的相應管腳并把LCD的管腳單片機相連接。
(3)焊接鍵盤的按鍵電路。
(4)焊接電子密碼鎖的密碼輸入錯誤的報警電路。
(5)焊接密碼鎖的開鎖機構電路。
(6)焊接其他接口及輔助電路。
(7)焊接接地及高電平。
5.2、硬件調試問題及解決方法本設計在焊接調試時遇到的問題以及解決方法:
單片機的最小系統問題:
電源、晶振電路和復位電路都無異常。
Lcd焊接時的問題:
(1)接通電源后lcd無反應,各個引腳均屬正常。推斷可能是初始化程序出現問題。
經查找得知是lcd顯示器的15和16管腳控制背光功能,連接好之后還是不能顯示字符。
(2)接通電源開門燈和報警電路就會工作,分析原因是單片機剛開始各個管腳輸出高電平。

第六章 結論本設計從經濟實用的角度出發,采用單片機STC89C51低功耗CMOS型E2PROM AT24C02作為主控芯片與數據存儲器單元,結合外圍的鍵盤輸入、顯示、報警、開鎖等電路并用C語言的控制程序,研制了一款可以多次更改密碼具有報警功能的電子密碼鎖。設計完全可行可以達到設計目地。使用單片機制作的電子密碼鎖具有軟硬件設計簡單,易于開發,成本較低,安全可靠,操作方便等特點,可應用于住宅、辦公室的保險箱及檔案柜等需要防盜的場所,有一定的實用性。該電路設計還具有按鍵有效提示,輸入錯誤提示,控制開鎖電平,控制報警電路,修改密碼等多種功能。可在意外泄密的情況下隨時修改密碼。保密性強,靈活性高,特別適用于家庭、辦公室、學生宿舍及賓館等場所。
參考文獻[01] 何宏主編. 單片機原理與接口技術. 北京:國防工業出版社. 2006.07
[02] 楊西明, 朱騏主編 . 單片機編程與應用入門. 北京:機械工業出版社 .2004.06
[03] 先鋒工作室編著. 單片機程序設計實例. 北京: 清華大學出版社 .2003.01
[04] 謝宜仁主編 . 單片機實用技術問答. 北京: 人民郵電出版社 . 2003.02
[05] 梁麗.電子密碼鎖的計算機仿真設計.計算機仿真,2005
[06] 房小翠,王金鳳編著. 單片機實用系統設計技術. 北京: 國防工業出版社 . 1999.06
[07] 各種網絡教程及其他
[08] 王寬仁. 可靠安全的智能密碼鎖. 電子技術應用 , 2001
[09] 李捷 , 陳典濤 , 陳建華 , 等. 一種基于單片機的電子密碼鎖的設計 [J]. 農機化研究 , 2004, 5
[10] 董繼成. 能防止多次試探密碼的單片機密碼鎖.國外電子元器件 , 2004, 3
[11]趙益丹,徐曉林,周振峰編著.電子密碼鎖的系統原理、設計程序及流程圖.嘉興學院學報,2003,15
[12] 張培仁. 基于 C語言編程 MCS- 51單片機原理與應用. 北京: 清華大學出版社 , 2002.12
[13] 李朝清. PC機及單片機數據通信技術. 北京:北京航空航天大學出版社 , 1999.
[14] 路而紅.專用集成電路設計與電子設計自動化.北京:清華大學出版社,2004
[15] 劉文濤.MCS-51單片機培訓教程(C51)版.電子工業出版社,2005.8
[16] 王為青 程國鋼.單片機Keil Cx51 應用開發技術.人民郵電出版社,2007.2
[17] 范風強 蘭嬋麗.單片機語言C51應用實戰集錦.電子工業出版社,2003.3
[18] 龔運新.單片機C語言開發技術.清華大學出版社,2006.10
[19] 邵貝貝.單片機嵌入式應用的在線開發方法.清華大學出版社,2006.3
[20] 王宜懷.單片機原理及其嵌入式應用教程.北京希望電子出版社,2002.8
附錄一 原理圖
附錄二 仿真圖
附錄三 電子密碼鎖程序源代碼(見附件)