【文章內(nèi)容簡介】
的方式傳送數(shù)據(jù),所以只用兩根線 SCL(移位脈沖)和 SDA(數(shù)據(jù) /地址)與單片機傳送數(shù)據(jù)。 每當設定一次單價,系統(tǒng)就自動調(diào)用存儲程序,將單價信息保存在芯片內(nèi);當系統(tǒng)重新上電的時候,自動調(diào)用讀存儲器程序,將存儲器內(nèi)的單價等信息,讀到緩存單元中,供主程序使用。 密碼鎖的電源電路設計 為了防止停電情況的發(fā)生,本電路后備了 UPS 電源,它包括市電供電電路,停電檢測電路,電子開關切換電路,蓄電池充電電路和蓄電池組成。電源電路圖如圖 3- 8所示。 12J P 112J P 2D1D2D3D4 D5R11KC133 00C2C333 001 2 378 05 圖 3- 8 市電供電電路 220V市電通過變壓器降壓成 12V的交 流電 ,再經(jīng)過整流橋整流 ,7805穩(wěn)壓到 5V 送往電子切換電路,由于本電路功耗較少,所以選用 10W 的小型變壓器。 12 由 R8, R9, R6, R7 及 IC14 構成電壓比較器,正常情況下, V+V IC14輸出高電平,繼電器的常閉觸點和市電相連;當市電斷開, V+V IC14 輸出高電平,由 T3, T4 構成的達林頓管使繼電器 J開啟,將其常開觸電將蓄電池和電路相連,實現(xiàn)市電和蓄電池供電的切換,保證電子密碼鎖的正常工作(視電池容量而定持續(xù)時間)。其電路圖如下圖所示: R850KR940KR730KR620KT39018R 10T49014123I C 1 4741繼電器蓄電池供電5V 直流 電源 A1蓄電池 A25V 直流電源 A1蓄電池 A2VCC常閉常開 圖 3- 9 停電檢測及電子開關切換電路 T1, T2 構成的蓄 電池自動充電電路,它在電池充滿后自動停止充電,其中 D1亮為正在充電, D2 為工作指示。由 R4, R5, T1 構成電壓檢測電路,蓄電池電壓低,則 T1, T2 導通,實現(xiàn)對其充電;充滿后, T1, T2 截止,停止充電,同時 D1 熄滅,電路中 C4 的作用是濾除干擾信號。其電路圖如圖 7所示: R5470R23KR13KT19014D2D1C43C G 21R43K6V 蓄電 池電源 A26V 充電 電源蓄電池 圖 3- 10 蓄電池自動充電電路 設計總框圖 圖 3- 11 總體設計框圖 開鎖控制電路 89S51 單片機 AT24C02 掉電存儲 串口顯示電路 矩陣 鍵盤 控制 指示電路 輸入錯誤鎖定鍵盤 延時報警控制電路 電源電路及 UPS 電路 13 設計總體電路圖 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 D11P 3 .2 /I N T 012P 3 .3 /I N T 113P 3 .4 /T 014P 3 .5 /T 115P 3 .6 /W R16P 3 .7 /R D17X T A L 218X T A L 119G N D20U1 A T 8 9 S 5 1C12 2 u FR11KCRY6 M H zC23 3 P FC33 3 P FS P E A KD L Q I 1R E S E TR E S E TG N DS5E A /V PA L E /PP S E NG N DC51000uF/25VC40 .1 u FV C CG N D123E A /V PNC1NC2NC3G N D4S D A5S C L6WP7V C C8U4A T 2 4 C 0 2 AS C LG N DS D A12V C CD A T AS C LWR1234R /T /L E DS D AV C CD A T AWRG N DV C CV C CV C CV C CG N D電源接口數(shù)碼管接口存儲器選擇接口D L Q I 2DSR72 0 0復位電路M C U 模塊CSE A /V P串行存儲模塊R85 .1 kR 1 05 .1 k矩陣鍵盤電源電路及其 U PS 電路 圖 3- 12 總體電路圖 14 第四章程序設計 .模塊介紹 該計程計價系統(tǒng)的軟件設計分為以下幾個模塊: (1)主程序模塊 主程序主要完成初始化、設置中斷向量、檢查有無按鍵按下、以及調(diào)用顯示等等。主程序的流程圖如下所示。 (2)鍵盤掃描及識別子程序 鍵盤采用查詢的方式,放在主程序中,當沒有按鍵按下的時候,單片機循環(huán)主程序,一旦有按鍵按下,便轉向相應的子程序處理,處理結束再返回。其程序流程如圖 所示 . (3)調(diào)電存儲服務程序 當比較密碼的時候,需要讀 AT24C02 程序,將存儲在芯片內(nèi)的數(shù)據(jù)讀到RAM中,然后和輸入的密碼相比較。 當修改密碼的時候,需要把輸入的密碼保存到 AT24C02中,其程序流程如圖 所示 . (4)顯示子程序 由于是分屏顯示數(shù)據(jù),所以就要用到 5個顯示子程序,分別是:關閉狀態(tài)顯示子程序( DIS_A)、開鎖狀態(tài)顯示子程序( DIS_B)、密碼輸入及修改狀態(tài)顯示子程序 (DIS_C)、密碼輸入錯誤后的提示子程序 (DIS_D)。密碼在規(guī)定的時間內(nèi)輸入錯誤次數(shù)超過 3次后的鎖定狀態(tài)顯示子程序 (DIS_E). 15 ( 1)主程序流程圖如圖 3- 1 所示。 開始 初始化 有鍵按下? 調(diào)用顯示 啟動定時 識別按鍵 全部按完? 超時? 比較密碼 開門 開始 自動清除 N N Y Y Y N 按下 F2 啟動定時 輸入密碼 存入緩沖 再輸入一次 比較密碼 調(diào)用 24C02 調(diào)用顯示 按 F2 退出 Y 重新輸入 N 圖 4- 1 主程序流程圖 圖 4- 2 修改密碼流程圖 16 電子密碼鎖的程序設計 .電路原理圖 圖 3.系統(tǒng)板上硬件連線 ( 1). 把“單片機系統(tǒng)”區(qū)域中的 “音頻放大模塊”區(qū)域中的 SPK IN 端子上; ( 2). 把“音頻放大模塊”區(qū)域中的 SPK OUT 端子接喇叭和; 17 ( 3). 把“單片機系統(tǒng)”區(qū)域中的 -“四路靜態(tài)數(shù)碼顯示”區(qū)域中的任一個ABCDEFGH端子上; ( 4). 把“單片機系統(tǒng)“區(qū)域中的 用導線連接到“八路發(fā)光二極管模塊”區(qū)域