




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于FPGA 的電子密碼鎖設(shè)計(jì)摘要本設(shè)計(jì)以現(xiàn)場(chǎng)可編程邏輯器件(FPGA)為設(shè)計(jì)載體以硬件描述語言(VHDL)為主要表達(dá)方式以Quartus開發(fā)軟件給出了一種電子密碼鎖的設(shè)計(jì)方案同時(shí)闡述了電子密碼鎖的工作原理和軟硬件實(shí)現(xiàn)方法最后對(duì)該電子密碼鎖進(jìn)行了時(shí)序仿真和硬件驗(yàn)證,實(shí)現(xiàn)了可編程的片上系統(tǒng)(SOPC)。該密碼鎖可隨時(shí)更新密碼和升級(jí)算法,具有較好的可靠性和性價(jià)比,特別適用于賓館、辦公大樓、倉庫等。關(guān)鍵詞:電子密碼鎖;FPGA;VHDL;QuartusAbstractThe design field-programmable logic device (FPGA) for the design of
2、 vectors to the hardware description language (VHDL) as the main way of expression in order to develop software Quartus given an electronic password lock design also described an electronic password lock of the working principle and Finally software and hardware implementations of the electronic cod
3、e lock of the timing simulation and hardware verification, achieved a programmable system on chip (SOPC). The lock can always change your password and update algorithms, with better reliability and cost-effective, especially for hotels, office buildings, warehouses and so on.Key word: electronic com
4、bination locks, FPGA, VHDL, Quartus0 引言鎖自古以來就是把守門戶的鐵將軍,人們對(duì)它要求甚高,既要安全可靠地防盜,又要使用方便。 彈子鎖由于結(jié)構(gòu)上的局限已難以滿足當(dāng)前社會(huì)管理和防盜要求, 特別是在人員經(jīng)常變動(dòng)的公共場(chǎng)所,如辦公室、賓館、倉庫等地方。 電子密碼鎖是集計(jì)算機(jī)技術(shù)、 電子技術(shù)、 數(shù)字密碼技術(shù)為一體的機(jī)電一體化高科技產(chǎn)品, 具有安全性高, 使用方便等優(yōu)點(diǎn), 越來越受到人們的青睞, 但是目前使用的電子密碼鎖大部分是基于單片機(jī)技術(shù), 以單片機(jī)為主要器件, 其成本高且可靠性較差。 本文介紹一種采用現(xiàn)場(chǎng)可編程門陣列(FPGA)為核心器件的新型電子密碼鎖的設(shè)計(jì)方
5、法, 具有現(xiàn)場(chǎng)可編程在系統(tǒng)調(diào)試的功能, 即實(shí)現(xiàn)SOPC, 能夠在產(chǎn)品設(shè)計(jì)開發(fā)、制造過程中對(duì)產(chǎn)品中的器件、 電路板甚至整個(gè)電子系統(tǒng)的邏輯和功能隨時(shí)進(jìn)行組態(tài)或重組。FPGA器件能夠簡(jiǎn)化系統(tǒng)結(jié)構(gòu), 降低成本, 提高了系統(tǒng)的保密性和可靠性,具備萬次以上的擦寫能力。因此,采用這種器件開發(fā)的數(shù)字系統(tǒng), 其升級(jí)與改進(jìn)極其方便。1系統(tǒng)功能(1) 數(shù)碼輸入:按下一個(gè)數(shù)字鍵,其對(duì)應(yīng)的數(shù)字就顯示在最右邊的數(shù)碼管上,同時(shí)將先前輸入的所有數(shù)字向左移動(dòng)一位,設(shè)計(jì)密碼為4位系統(tǒng)只能顯示前4位輸入的數(shù)碼。(2) 數(shù)碼清除:當(dāng)按下清除鍵時(shí),清除前面輸入的所有值,并顯示為“ - - - -”。(3) 密碼解除:按下55#鍵,可以
6、將電子密碼鎖的舊密碼解除。(4) 密碼更改:將舊密碼解除之后,可以進(jìn)行密碼更改,輸入任意四位密碼數(shù)字,再按#號(hào)就可以將輸入的數(shù)碼當(dāng)作新的密碼。(5) 密碼上鎖:輸入新的密碼之后,按下11#鍵,可以進(jìn)行密碼上鎖操作。(6) 密碼解鎖:按下99#鍵再輸入數(shù)碼,如果輸入與系統(tǒng)儲(chǔ)存密碼一致,密碼鎖就能開啟否則不能解鎖。【1】2系統(tǒng)硬件部分設(shè)計(jì)硬件系統(tǒng)主要由鍵盤輸入電路、顯示譯碼電路和密碼鎖控制電路等組成。 密碼鎖的硬件系統(tǒng)示意圖如圖1所示。圖1 系統(tǒng)整體框圖2.1鍵盤輸入電路鍵盤輸入主要用于輸入數(shù)據(jù),由鍵盤掃描電路、消抖動(dòng)電路、鍵盤譯碼器、按鍵數(shù)據(jù)緩存器和4 ×4 矩陣式鍵盤等組成。鍵盤采用
7、4 ×4矩陣式鍵盤,有09共10個(gè)數(shù)字鍵和6個(gè)功能鍵。各功能鍵的功能如下:1)Set:密碼設(shè)置鍵,鎖開的情況下,按下該鍵設(shè)置密碼。鎖未開,該鍵無效。2)Dial:撥號(hào)鍵,按下時(shí),可以輸入密碼。3)Reset:系統(tǒng)復(fù)位鍵,按下該鍵,系統(tǒng)回到初始狀態(tài)。4)Cheak:檢查鍵,密碼輸完,按該鍵,如密碼正確則開鎖。5)Close:關(guān)鎖鍵。6)Back:刪除鍵,刪除(除功能鍵之外)輸入的數(shù)字。鍵盤掃描信號(hào)由計(jì)數(shù)器產(chǎn)生。每當(dāng)掃描信號(hào)發(fā)生變化時(shí),掃描鍵盤某一行按鍵的狀態(tài)信號(hào),如果沒有按鍵被按下,則掃描下一行;如果有按鍵被按下,去抖動(dòng)后,再次掃描被鎖定行以確定按鍵是否誤讀;如果按鍵被證實(shí)按下,則一直
8、等待直至用戶釋放該鍵?!?】2.2 密碼鎖控制電路密碼鎖控制電路是整個(gè)系統(tǒng)的控制中心,當(dāng)有按鍵按下時(shí),系統(tǒng)根據(jù)譯碼所得數(shù)字,判斷出按下的是功能鍵還是數(shù)字鍵,如果是功能鍵,則執(zhí)行相應(yīng)鍵的功能;如果是數(shù)字鍵,則作為密碼??刂齐娐返挠布梢黄珽P1K30TC144-3 實(shí)現(xiàn),控制功能由軟件實(shí)現(xiàn)?!?】3系統(tǒng)軟件部分設(shè)計(jì)與仿真3.1電子密碼鎖的整體結(jié)構(gòu)電子密碼鎖的整體結(jié)構(gòu)如2所示,它包括密碼鎖輸入模塊、控制模塊和顯示模塊等。圖2 電子密碼鎖整體元件例化框圖3.2 電子密碼鎖輸入模塊密碼鎖輸入模塊由時(shí)序產(chǎn)生電路、鍵盤掃描電路、彈跳消除電路、鍵盤譯碼電路和按鍵存儲(chǔ)電路組成。時(shí)序產(chǎn)生電路用于產(chǎn)生電路中三種不
9、同頻率的工作脈沖波形,包括系統(tǒng)時(shí)鐘信號(hào)、彈跳消除取樣信號(hào)和鍵盤掃描信號(hào)。鍵盤電路可提供鍵盤掃描信號(hào)。該信號(hào)由ky3-ky0進(jìn)入鍵盤,其變化的順序?yàn)?110-1101-1011-0111-1110 周而復(fù)始。 掃描信號(hào)0111代表掃描的為*、0、#這一排按鍵 ,當(dāng)*這個(gè)按鍵被按下時(shí),由kx2-kx0讀出的值為011,按鍵位置的數(shù)碼關(guān)系如表1所列。表1 按鍵位置數(shù)碼表彈跳消除電路可避免誤操作發(fā)生,由于設(shè)計(jì)中采用的矩陣式鍵盤是機(jī)械開關(guān)結(jié)構(gòu),因此在開關(guān)切換的瞬間,會(huì)在接觸點(diǎn)出現(xiàn)信號(hào)來回彈跳的現(xiàn)象。為使電子密碼鎖可靠工作,必須加上彈跳消除電路。彈跳消除電路采用軟件延時(shí)的方法消除抖動(dòng),其仿真波形如3所示。
10、圖3 消抖電路仿真圖從圖3中可以看出,若采樣信號(hào)連續(xù)兩次或超過兩次檢測(cè)到高電平信號(hào),說明按鍵狀態(tài)確實(shí)發(fā)生了變化,此時(shí)電路輸出一個(gè)時(shí)鐘周期的按鍵信號(hào),否則當(dāng)作抖動(dòng)處理而不予理會(huì),以此來消除抖動(dòng)。對(duì)于鍵盤譯碼電路,分為數(shù)字按鍵和功能按鍵,每一個(gè)按鍵可負(fù)責(zé)不同的功能,而鍵盤所產(chǎn)生的輸出 (也就是掃描回復(fù)信號(hào)) 卻無法直接拿來用作密碼鎖控制電路的輸入,所以必須由鍵盤譯碼電路來規(guī)劃每個(gè)按鍵的輸出形式,以便執(zhí)行相應(yīng)的動(dòng)作?!?】鍵盤存儲(chǔ)電路可將每次掃描產(chǎn)生的新按鍵數(shù)據(jù)存儲(chǔ)下來,因此新數(shù)據(jù)可能會(huì)覆蓋前面的數(shù)據(jù),所以需要一個(gè)按鍵存儲(chǔ)電路,以將整個(gè)鍵盤掃描完畢的結(jié)果記錄下來。圖4 密碼鎖輸入模塊的仿真波形圖4所
11、示是密碼鎖輸入模塊的仿真波形,圖中,數(shù)字鍵數(shù)據(jù)“0、1、2、3、4、5、6、7、8、9” 和功能鍵數(shù)據(jù) “0100、0001” 所得到的輸出不同,由此可證明密碼鎖輸入模塊的正確性。3.3 控制模塊密碼鎖控制電路是整個(gè)電路的控制中心,主要完成對(duì)數(shù)字鍵輸入和功能鍵輸入的響應(yīng)和控制,密碼鎖控制電路的仿真波形如圖5所示。圖5 密碼鎖控制電路的仿真波形從圖5可見,其數(shù)字鍵輸入的響應(yīng)控制過程如下:(1) 按下數(shù)字鍵,第一個(gè)數(shù)字會(huì)在顯示器的最右端顯示,隨后每按下一個(gè)新數(shù)字 顯示器上已經(jīng)存在的數(shù)字整體會(huì)向左移一位,并將以新的數(shù)字顯示出來。(2) 若要更改輸入數(shù)字,則可按*鍵清除所有輸入的數(shù)字,再重新輸入數(shù)字。
12、(3) 電子密碼鎖為4位,當(dāng)輸入超過4位時(shí)電路不予理會(huì),且不顯示第4個(gè)以后的數(shù)字。功能按鍵的輸入響應(yīng)控制功能如:(1) 清除功能:按下*鍵可清除所有輸入的數(shù)字,顯示為“ -”。(2) 更改密碼:按下55#鍵,輸入舊密碼 (設(shè)計(jì)中為“0000”),再按#鍵,即可解除舊密碼。接著輸入4位數(shù)字,再按下#鍵,就可以將4位數(shù)字作為新密碼。(3) 密碼上鎖:輸入4位新的密碼數(shù)字之后再按11#鍵,就可以將密碼鎖上鎖(4) 密碼解鎖:按下99#鍵可輸入密碼解鎖假如輸入“2345”這個(gè)密碼,然后按下#鍵,系統(tǒng)將比較鍵盤輸入的數(shù)碼和寄存器中的數(shù)碼,如果一致,就會(huì)給出一個(gè)開鎖信號(hào),密碼鎖開鎖,否則密碼輸入無效。3.
13、4 顯示模塊本電子密碼鎖的顯示模塊比較簡(jiǎn)單,其作用是將控制模塊的BCD碼輸出轉(zhuǎn)換為7段顯示編碼然后驅(qū)動(dòng)數(shù)碼管,其仿真波形如圖6所示:圖6顯示模塊仿真波形4將各個(gè)模塊整合為系統(tǒng)并硬件驗(yàn)證要完成電子密碼鎖的設(shè)計(jì),還必須將上述三個(gè)功能模塊進(jìn)行整合,本設(shè)計(jì)選用杭州康芯電子有限公司生產(chǎn)的GW48EDA系統(tǒng)作為硬件驗(yàn)證系統(tǒng),同時(shí)選用Altera公司的EP1K30TC144-3作為主控芯片【5】。該芯片是一種基于查找表結(jié)構(gòu)的現(xiàn)場(chǎng)可編程邏輯器件,它的基本邏輯單元是可編程的查找表 ,能夠?qū)崿F(xiàn)組合邏輯運(yùn)算,并可用可編程寄存器實(shí)現(xiàn)時(shí)序邏輯運(yùn)算。本設(shè)計(jì)在Proteus ISIS中命名40X16,匯編語言程序命名為40
14、X16.asm,點(diǎn)擊菜單Source的下拉菜單第一條Add/Remove Source Files,在彈出的對(duì)話框中點(diǎn)擊New,選擇40X16.asm,然后在CodeGereration tool一欄的下拉框中選擇ASM51,點(diǎn)擊OK,這樣,菜單Source的下拉菜單中就多了個(gè)40X16.asm,點(diǎn)擊菜單Source的下拉菜 單BuildAll,如果編譯成功,會(huì)彈出BUILD LOG提示沒有錯(cuò)誤,如果程序中有錯(cuò)誤,則編譯失敗,BUILDLOG也會(huì)對(duì)錯(cuò)誤進(jìn)行提示。編譯完成后生成40X16.hex文件,在原理圖中右鍵點(diǎn)擊AT89C51再點(diǎn)擊左鍵,會(huì)彈出Edit Component對(duì)話框中如圖7所示
15、,對(duì)其設(shè)置完后再點(diǎn)擊OK,就可以進(jìn)行仿真了。然后只需要對(duì)電子密碼鎖整體設(shè)計(jì)中的輸入輸出引腳作引腳鎖定,然后重新編譯和下載,即可進(jìn)行電子密碼鎖的硬件驗(yàn)證。經(jīng)過驗(yàn)證表明:本設(shè)計(jì)能夠?qū)崿F(xiàn)電子密碼鎖的全部功能?!?】 圖7 Edit Component對(duì)話框5總結(jié) 對(duì)于這一整個(gè)電子密碼鎖系統(tǒng),設(shè)計(jì)的程序已經(jīng)基本實(shí)現(xiàn)了預(yù)期的所有功能,充分利用了EDA 設(shè)計(jì)中的優(yōu)點(diǎn),將各模塊以文件頂層設(shè)計(jì)的方式讓所有子程序串聯(lián)在了一起 ,通過滿足某個(gè)條件而實(shí)現(xiàn)相關(guān)功能,顯然這個(gè)系統(tǒng)的設(shè)計(jì)已經(jīng)完成,也基本達(dá)到了作為數(shù)字密碼鎖的絕大部分功能。參考文獻(xiàn)1 尹常永. EDA技術(shù)與數(shù)字系統(tǒng)設(shè)計(jì). 西安電子科技大學(xué)出版社. 2004
16、年2 于楓. ALTERA可編程邏輯器件應(yīng)用技術(shù). 北京科學(xué)出版社. 2004年3 王道憲. CPLD/ FPGA可編程邏輯器件應(yīng)用與開發(fā). 國防工業(yè)出版社. 2005年4 李連華. 基于FPGA 的電子密碼鎖設(shè)計(jì). 中國科技信息2006 (1) : 63 5 金西. VHDL 與復(fù)雜數(shù)字系統(tǒng)設(shè)計(jì). 西安電子科技大學(xué)出版社. 2003年6 朱正涌. 半導(dǎo)體集成電路. 清華大學(xué)出版社. 2001年附錄主要程序:LIBRARY IEEE ;ENTITY DZMMSUO ISPORT(CLK,CLRM,PRN:IN STD_LOGIC;KEY : IN STD_LOGIC _VECTOR(2 DOW
17、NTO 0);DATA_N,DATA_F: OUT STD_LOGIC _VECTOR (3 DOWNTO 0);DATA_BCA: OUT STD_LOGIC _VECTOR (15 DOWNTO 0);FLAG_N,FALG_F,MINMAIN,SETIN,OLD,ENLOCK, Q: OUT STD_LOGIC);END DZMMSUO ;ARCHITECTUR BEHAVE OF DZMMSUO ISBEGIN IF CLRN'0' AND PRN'1' THENQ<'0'ELSIF CLRN'1' AND PRN&
18、#39;0' THENQ<'1'ELSIF CLK'EVENT AND CLK'1' THENQ<D;END IF;U1 DCFQ PORT MAP CLK>CLK CLRN>INVD PRN>VCC D>VCC Q>Q0;U2 DCFQ PORT MAP CLK >CLK CLRN >Q0 PRN >VCC DVCC Q>Q1;PROCESS CLKBEGINIF CLKEVENT AND CLK'1' THEN;D0<NOT Q1;D1<D0;END IF;END PROCESS;DD0<D0 DD1<D1 QQ1<Q1 QQ0<Q0;DOUT<NOT D1 AND NOT D0;DOUT1<NOTQ1;END ARCHITECTURE ART;KEYINPROCESS BLOCK ISSIGNAL RST D0 D1 STDLOGIC;BEGINRST<RR2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)差旅合作合同范本
- 6-Piperazin-1-yl-isoquinoline-hydrochloride-6-1-Piperazinyl-isoquinoline-hydrochloride-生命科學(xué)試劑-MCE
- 項(xiàng)目聘用合同范本
- 物流包車合同范本
- 2025年飼用生物活性制劑項(xiàng)目合作計(jì)劃書
- 2025年高溫蠕變?cè)囼?yàn)機(jī)合作協(xié)議書
- 語音識(shí)別技術(shù)合作開發(fā)合同(2篇)
- 2025年500KV760KV超高壓變壓器匝和超高壓電纜絕緣紙項(xiàng)目發(fā)展計(jì)劃
- 焦化廠工資待遇報(bào)告范文
- 簡(jiǎn)短交通事故報(bào)告范文
- 2024湖北省金口電排站管理處招聘易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 油井供水合同范例
- 2025年人教部編版語文五年級(jí)下冊(cè)教學(xué)計(jì)劃(含進(jìn)度表)
- 全國計(jì)算機(jī)等級(jí)考試一級(jí)試題及答案(5套)
- 銀河證券-科創(chuàng)板認(rèn)知測(cè)評(píng)題目及答案
- 產(chǎn)品方案設(shè)計(jì)模板
- 部隊(duì)通訊員培訓(xùn)
- 物業(yè)公司水浸、水管爆裂事故應(yīng)急處置預(yù)案
- 第四章第三節(jié)幼兒的親子關(guān)系(課件)-《幼兒心理學(xué)》(人教版第二版)
- 國企投資管理制度
- 部編版三年級(jí)下冊(cè)語文作業(yè)本參考答案
評(píng)論
0/150
提交評(píng)論