基于單片機的現(xiàn)場無電源電子密碼鎖設計
2 軟件系統(tǒng)設計
系統(tǒng)軟件由控制部分主程序、數(shù)據(jù)接收程序、電機驅(qū)動程序、手持部分主程序、數(shù)據(jù)發(fā)送程序組成。控制部分與手持部分傳送開門、關門信號和鑰匙密碼信號,其中鑰匙密碼信號用1l位二進制數(shù),具有較好的安全性。
2.1 數(shù)據(jù)“0”,“1”傳送方法
采用異步FSK通訊方式,使用信號的不同頻率來區(qū)分“0”和“1”,如圖6所示。

當信號頻率為20 kHz時,代表傳輸為“O”;當信號頻率為10 kHz時,代表傳輸為“1”。當晶振為12 MHz時,機器周期大約為1μs。在接收部分,定時器/計數(shù)器1用來記錄機器周期的個數(shù)。當記錄的機器周期個數(shù)在30~70之間時,可以確定接收到的是“O”(O的標準個數(shù)為50個);當記錄的機器周期個數(shù)在80~120之間時,確定接收到的是“1”(1的標準個數(shù)為100個),其他情況按錯誤處理。
2.2 通信協(xié)議設計
在傳送的信息中,一部分是*、閉鎖控制命令信號,另一部分是鑰匙密碼信息??刂撇糠纸邮盏借€匙密碼信息,經(jīng)驗證與本機的密碼一致后可以執(zhí)行*、閉鎖操作。采用異步通信方式,定義協(xié)議格式為起始位、鑰匙密碼信息位、開/關位、校驗位。其中,起始位為1位;鑰匙密碼信息為11位;開/關位為1位;校驗位為4位。當起始位為“0時,表示一幀數(shù)據(jù)的開始,加上此后連續(xù)的16位為一幀數(shù)據(jù)。
鑰匙信息共有2048種組合,開/關位為“1”,代表*操作;開/關位為“0”,代表閉鎖操作;校驗位由11鑰匙信息位和1為開/關位共12位(由高到低4位為1組)經(jīng)2次異或操作得到。
2.3 程序設計
手持部分主程序完成系統(tǒng)初始化、讀取按鍵,形成數(shù)幀,啟動發(fā)送等任務。使用定時中斷T1,完成數(shù)據(jù)的發(fā)送過程。當為數(shù)據(jù)“0”時,定時器初值為65 535-50=65 485=FFCO(H);當為數(shù)據(jù)“1”時,定時器初值為65535-100=FF9B(H),逐次發(fā)送各位,直到將一幀數(shù)據(jù)發(fā)送結(jié)束。手持部分主程序和T1中斷程序流程如圖7和圖8所示。

控制部分采用定時器T0和外部中斷O實現(xiàn),初始化設置定時器為內(nèi)部計數(shù)方式,計數(shù)初值為0。當手持部分信號到達控制部分時,單片機的外部中斷O產(chǎn)生中斷,在中斷程序中讀取計數(shù)器的計數(shù)值t。當30≤t≤70時,接收到的位為“0”;當80≤t≤120時,接收到的位為“1”。將接收的各位組合起來恢復發(fā)送的一幀數(shù)據(jù),經(jīng)檢驗處理正確無誤后進行*或閉鎖操作。
3 結(jié)語
電子鎖系統(tǒng)的數(shù)據(jù)線和電源線采用一線制連接,使用方便;鑰匙密碼以加密的方式寫入存儲器中,具有很高的安全性;不需要現(xiàn)場提供電源,解決了傳統(tǒng)電子鎖需要現(xiàn)場提供電源的問題。電子鎖系統(tǒng)已在勝利油田孤島采油廠、東辛采油廠注水井的安全保護和東營移動通信公司通信線路地井的防盜裝置上得到了應用,具有較好的實用推廣價值。
評論