国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一款基于單片機I2C總線實現(xiàn)的密碼鎖

2013-10-18 01:10:38廣東楊旭方
職業(yè)技術 2013年3期
關鍵詞:密碼鎖主從字節(jié)

廣東 楊旭方

隨著科學技術的迅速發(fā)展和人們生活水平的不斷提高,人們的安全意識也越來越強,傳統(tǒng)機械鑰匙不僅攜帶不方便、容易損壞,而且安全性能低,被撬事件屢見不鮮,機械鎖已不能滿足人們?nèi)粘I钚枰k娮用艽a鎖利用軟件加密、解密功能,從根本上克服了傳統(tǒng)機械鎖安全性能低的缺點,不僅使用方便、成本低,而且不用攜帶鑰匙,壽命長,逐步成為現(xiàn)代家庭門鎖的首要選擇。

一、I2C總線簡介

I2C總線 (Inter Integrate Circuit BUS)全稱為芯片間總線,它是由PHILIPS公司開發(fā)的兩線式串行總線,用于連接CPU及其外圍設備。I2C總線產(chǎn)生于上世紀80年代,最初為音頻和視頻設備開發(fā),現(xiàn)主要用在服務器管理中,其中包括單個組件狀態(tài)的通信。I2C總線利用兩根線實現(xiàn)全雙工同步數(shù)據(jù)傳送,具有連線少、可靠性高、成本低、不需要片選信號、支持熱插拔等優(yōu)點。

I2C總線支持主從和多主兩種工作方式。在主從方式中,系統(tǒng)只有一個處理器,從器件的地址由I2C總線委員會分配,引腳地址決定芯片引腳外接電平。在主從方式的I2C總線系統(tǒng)中只需考慮主方式的I2C總線操作,沒有總線的競爭等問題,系統(tǒng)相對簡單,成本也較低,因此,密碼鎖采用主從工作方式設計。

I2C總線傳送的數(shù)據(jù)每一個字節(jié)為8位,且高位在前,如圖一所示。首先由起始信號啟動I2C總線,其后為尋址字節(jié),尋址字節(jié)由高7位地址和最低1位方向位組成,方向位表明主控器與被控器數(shù)據(jù)傳送方向,方向位為“0”時,表明主控器對被控器進行寫操作,為“1”時,表明主控器對被控器進行讀操作,其后的數(shù)據(jù)傳輸字節(jié)數(shù)是沒有限制的,每傳送一個字節(jié)后都必須跟隨一個應答位或非應答位,在全部數(shù)據(jù)傳送結(jié)束后主控制器發(fā)送終止信號。

圖一 I2C總線一次完整數(shù)據(jù)傳輸過程

二、系統(tǒng)硬件設計

密碼鎖硬件電路主要由AT89C51單片機、密碼正誤顯示、AT24C02掉電存儲、密碼設置與輸入、開鎖驅(qū)動、報警以及電源等電路組成,如圖二所示。

圖二 密碼鎖硬件電路組成框圖

圖中,AT 89C51單片機是整個密碼鎖的控制中心,主要承擔密碼識別任務,并根據(jù)識別結(jié)果開鎖或報警。AT24C02為E2PROM器件,既具有ROM掉電不丟失數(shù)據(jù)特點,又具有RAM隨機讀寫特點,從而實現(xiàn)掉電保護功能。

三、系統(tǒng)軟件設計

(一)模擬單片機I2C總線數(shù)據(jù)

在標準I2C總線中,總線狀態(tài)監(jiān)測由硬件完成,用戶無須介入,但是具有I2C總線接口的MCS-51單片機畢竟不多,雖然AT89C51不帶I2C總線,但只要通過軟件模擬,即可達到I2C總線接口單片機功能。

在密碼鎖設計中,將AT 89C51的P3.4、P3.5分別作為時鐘線SCL和數(shù)據(jù)線SDA,分別與E2PROM器件AT24C02的時鐘線和數(shù)據(jù)線相連,根據(jù)I2C總線一次完整數(shù)據(jù)傳輸過程特點,通過軟件模擬,調(diào)用啟動(START)、停止(STOP)、發(fā)送應答位(ACK)、發(fā)送非應答位(NACK)、應答位檢查(CACK)、發(fā)送一個字節(jié)數(shù)據(jù)(WRBYT)、接收一個字節(jié)數(shù)據(jù)(RDBYT)、發(fā)送 n個字節(jié)數(shù)據(jù)(WRNBYT)、接收 n個字節(jié)數(shù)據(jù)(RDNBYT)九個子程序,完成I2C總線數(shù)據(jù)傳輸過程。

(二)程序流程圖

密碼鎖主程序主要由單元地址定義、預置密碼、用戶密碼輸入、讀設置密碼、識別密碼、密碼正誤顯示等組成,如圖三所示。

密碼鎖首先要進行初始化,主要用于定義I2C總線的數(shù)據(jù)線與時鐘總線、讀/寫控制字節(jié)存放單元、發(fā)送/接收數(shù)據(jù)緩沖區(qū)首址以及設置密碼與用戶密碼存放單元等。然后,系統(tǒng)調(diào)用預置密碼子程序和輸入用戶密碼子程序,并將兩個密碼進行比較,若密碼一致,則驅(qū)動開鎖電路實現(xiàn)開鎖,同時通過顯示器顯示密碼正確字符“Y”,否則,顯示密碼錯誤字符“N”,并報警提示。

圖三 密碼鎖主程序流程圖

四、結(jié)束語

電子密碼鎖作為一種新型的鎖具,越來越受到人們的青睞。本文以AT89C51為主控芯片,結(jié)合AT24C02掉電存儲、密碼正誤顯示、密碼設置與輸入、開鎖驅(qū)動等外圍電路,設計了一款多種功能電子密碼鎖,克服了傳統(tǒng)機械密碼鎖安全性能差、攜帶不方便的缺點,具有較高的推廣價值。

[1]李建波.基于STC89C52單片機的電子密碼鎖.現(xiàn)代電子技術,2008(23).

[2]鄭棣,徐迎春.基于單片機的電子密碼鎖設計.福建電腦,2012(9).

[3]劉振海.一種基于單片機和串行EEPROM的智能密碼鎖.微計算機信息,2007(23).

[4]朱璇,唐曉茜,殷建軍.基于單片機的智能加密電子密碼鎖設計.輕工機械,2009(8).

猜你喜歡
密碼鎖主從字節(jié)
No.8 字節(jié)跳動將推出獨立出口電商APP
No.10 “字節(jié)跳動手機”要來了?
FANUC系統(tǒng)PROFIBUS主從功能應用
日記密碼鎖2
日記密碼鎖
簡談MC7字節(jié)碼
開啟密碼鎖
數(shù)字密碼鎖的邏輯實現(xiàn)
電子制作(2017年22期)2017-02-02 07:10:27
基于主從控制的微電網(wǎng)平滑切換控制策略研究
基于飛行試驗數(shù)據(jù)的仿真模型主從一體化檢驗
武义县| 龙州县| 阳曲县| 海城市| 行唐县| 柞水县| 闵行区| 祁连县| 四子王旗| 无棣县| 银川市| 白山市| 闵行区| 中牟县| 丽水市| 南雄市| 巩义市| 上饶市| 呼玛县| 新绛县| 宜川县| 大悟县| 涡阳县| 南皮县| 商南县| 孟州市| 晋城| 延长县| 英山县| 曲周县| 台山市| 文水县| 济源市| 岳普湖县| 新郑市| 台东市| 台州市| 柘荣县| 青阳县| 永济市| 海原县|