課程設(shè)計(jì)電子密碼鎖_第1頁
課程設(shè)計(jì)電子密碼鎖_第2頁
課程設(shè)計(jì)電子密碼鎖_第3頁
課程設(shè)計(jì)電子密碼鎖_第4頁
課程設(shè)計(jì)電子密碼鎖_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、目錄目錄第 1 章 系統(tǒng)設(shè)計(jì)要求.1第 2 章 系統(tǒng)設(shè)計(jì)方案 .22.1 電子密碼鎖輸入電路的設(shè)計(jì) .22.1.1 矩陣式鍵盤的工作原理 .32.1.2 密碼鎖輸入電路各主要功能模塊的設(shè)計(jì).32.2密碼鎖控制電路的設(shè)計(jì).42.2.1 數(shù)字按鍵輸入的響應(yīng)控制 .42.2.2 功能按鍵輸入的響應(yīng)控制.42.3 密碼鎖顯示電路的設(shè)計(jì) .42.4 電子密碼鎖的三種模式關(guān)系 .4第 3 章 模塊分析 .63.1 密碼鎖輸入模塊 .63.1.1 密碼鎖輸入模塊的 vhdl 源程序.63.1.2 密碼鎖輸入模塊的原理圖.83.1.3 密碼鎖輸入模塊的仿真.83.2 密碼鎖控制模塊 .83.2.1 密碼鎖控制

2、模塊的 vhdl 源程序.83.2.2 密碼鎖控制模塊的原理圖.103.2.3 密碼鎖控制模塊的仿真.103.3 密碼鎖譯碼模塊 .113.3.1 密碼鎖譯碼模塊的 vhdl 源程序.113.3.2 密碼鎖譯碼模塊的原理圖.113.4 密碼鎖系統(tǒng) .123.4.1 系統(tǒng)整體組裝設(shè)計(jì)原理圖.12第 4 章 設(shè)計(jì)總結(jié) .14參考文獻(xiàn).15第第 1 章章 系統(tǒng)設(shè)計(jì)要求系統(tǒng)設(shè)計(jì)要求設(shè)計(jì)一個(gè)具有較高安全性和較低成本的通用電子密碼鎖,其具體功能要求如下:1. 數(shù)碼輸入:每按下一個(gè)數(shù)字鍵,就輸入一個(gè)數(shù)值,并在顯示器上的最右方顯示出該數(shù)值,同時(shí)將先前輸入的數(shù)據(jù)依序左移一個(gè)數(shù)字位置。2. 數(shù)碼清除:按下此鍵可清

3、除前面所有的輸入值,清除成為“0000” 。3. 密碼更改:按下此鍵時(shí)會(huì)將目前的數(shù)字設(shè)定成新的密碼。4. 激活電鎖:按下此鍵可將密碼鎖上鎖。5. 解除電鎖:按下此鍵會(huì)檢查輸入的密碼是否正確,密碼正確即開鎖。第第 2 章章 系統(tǒng)設(shè)計(jì)方案系統(tǒng)設(shè)計(jì)方案作為電子密碼鎖的輸入電路,可供選擇的方案有數(shù)字機(jī)械式鍵盤和觸摸式數(shù)字鍵盤等多種。 根據(jù)以上選定的輸入設(shè)備和顯示器件,并考慮到實(shí)現(xiàn)各項(xiàng)數(shù)字密碼鎖功能的具體要求,整個(gè)電子密碼鎖系統(tǒng)的總體組成框圖如圖 2-1 所示。圖 2-1 電子密碼鎖系統(tǒng)總體框圖2.1 電子密碼鎖輸入電路的設(shè)計(jì)電子密碼鎖輸入電路的設(shè)計(jì)圖 2-2 是電子密碼鎖的輸入電路框圖,由鍵盤掃描電路

4、、彈跳消除電路、鍵盤譯碼電路、按鍵數(shù)據(jù)緩存器,加上外接的一個(gè) 34 矩陣式鍵盤組成。圖 2-2 密碼鎖的輸入電路框圖2.1.1 矩陣式鍵盤的工作原理 矩陣式鍵盤是一種常見的輸入裝置,在日常的生活中,矩陣式鍵盤在計(jì)算機(jī)、電話、手機(jī)、微波爐等各式電子產(chǎn)品上已經(jīng)被廣泛應(yīng)用。圖 2-3 是一個(gè) 34 矩陣式鍵盤的面板配置圖,其中數(shù)字 09 作為密碼數(shù)字輸入按鍵,*作為“上鎖”功能按鍵,#作為“解鎖/清除”功能按鍵。圖 2-3 34 矩陣式鍵盤的面板配置2.1.2 密碼鎖輸入電路各主要功能模塊的設(shè)計(jì) 1. 時(shí)序產(chǎn)生電路時(shí)序產(chǎn)生電路 本時(shí)序產(chǎn)生電路中使用了三種不同頻率的工作脈沖波形:系統(tǒng)時(shí)鐘脈沖(它是系統(tǒng)

5、內(nèi)部所有時(shí)鐘脈沖的源頭,且其頻率最高)、彈跳消除取樣信號(hào)、鍵盤掃描信號(hào)。 2. 鍵盤掃描電路鍵盤掃描電路掃描電路的作用是用來提供鍵盤掃描信號(hào)(表 4.1 中的 ky3ky0)的,掃描信號(hào)變化的順序依次為 11101101101101111110.依序地周而復(fù)始。 3. 鍵盤譯碼電路鍵盤譯碼電路上述鍵盤中的按鍵分為數(shù)字按鍵和文字按鍵,每一個(gè)按鍵可能負(fù)責(zé)不同的功能,例如清除鍵、上鎖鍵和解除鍵等。數(shù)字按鍵主要用來輸入數(shù)字的,但是鍵盤所產(chǎn)生的輸出是無法直接拿來用作密碼鎖控制電路的輸入的;另外,不同的按鍵具有不同的功能,所以必須有按鍵譯碼電路來規(guī)劃每個(gè)按鍵的輸出形式,以便執(zhí)行相應(yīng)的動(dòng)作。4. 按鍵存儲(chǔ)電

6、路按鍵存儲(chǔ)電路因?yàn)槊看螔呙钑?huì)產(chǎn)生新的按鍵數(shù)據(jù),可能會(huì)覆蓋前面的數(shù)據(jù),所以需要一個(gè)按鍵存儲(chǔ)電路,將整個(gè)鍵盤掃描完畢后的結(jié)果記錄下來。各按鍵的位置與數(shù)碼關(guān)系如表 2.1 所示。 表 2.1 按鍵位置與數(shù)碼關(guān)系按鍵位置000000010101輸出信號(hào)001101010110001101010110按鍵號(hào)123456按鍵位置010101111111輸出信號(hào)001101010110001101010110按鍵號(hào)789*0#2. 2密碼鎖控制電路的設(shè)計(jì)密碼鎖控制電路的設(shè)計(jì)密碼鎖的控制電路是整個(gè)電路的控制中心,主要完成對(duì)數(shù)字按鍵輸入和功能按鍵輸入的響應(yīng)控制。2. 2.數(shù)字按鍵輸入的響應(yīng)控制1. 如果按下數(shù)字

7、鍵,第一個(gè)數(shù)字會(huì)從顯示器的最右端開始顯示,此后每新按一個(gè)數(shù)字時(shí),顯示器上的數(shù)字必須左移一格,以便將新的數(shù)字顯示出來。2. 假如要更改輸入的數(shù)字,可以按倒退按鍵來清除前一個(gè)輸入的數(shù)字,或者按清除鍵清除所有輸入的數(shù)字,再重新輸入四位數(shù)。3.由于這里設(shè)計(jì)的是一個(gè)四位的電子密碼鎖,所以當(dāng)輸入的數(shù)字鍵超過四個(gè)時(shí),電路不予理會(huì),而且不再顯示第四個(gè)以后的數(shù)字。.功能按鍵輸入的響應(yīng)控制1. 清除鍵:清除所有的輸入數(shù)字,即做歸零動(dòng)作。2. 激活電鎖鍵:按下此鍵時(shí)可將密碼鎖的門上鎖。(上鎖前必須預(yù)先設(shè)定一個(gè)四位的數(shù)字密碼。)3. 解除電鎖鍵:按下此鍵會(huì)檢查輸入的密碼是否正確,若密碼正確無誤則解鎖。 2.3 密碼鎖

8、顯示電路的設(shè)計(jì)密碼鎖顯示電路的設(shè)計(jì)密碼鎖顯示電路的設(shè)計(jì)比較簡單,這里直接采用四個(gè) 4-7 譯碼器來實(shí)現(xiàn)。2.4 電子密碼鎖的三種模式關(guān)系電子密碼鎖的三種模式關(guān)系 電子密碼鎖存在三種模式:輸入文字模式、上鎖工作模式和開鎖工作模式。這三種模式有一定的關(guān)系相對(duì)應(yīng),對(duì)應(yīng)關(guān)系如下圖。圖 2-4 電子密碼鎖的三種模式及關(guān)系第第 3 章章 模塊分析模塊分析3.1 密碼鎖輸入模塊密碼鎖輸入模塊密碼鎖輸入電路主要是產(chǎn)生時(shí)鐘脈沖信號(hào)和按鍵輸入信號(hào)。3.1.1 密碼鎖輸入模塊的 vhdl 源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_a

9、rith.all;use ieee.std_logic_unsigned.all;entity sr isport ( clk_1k: in std_logic; key_in: in std_logic_vector ( 2 downto 0); data_n: out std_logic_vector ( 3 downto 0); data_f: out std_logic_vector ( 3 downto 0); flag_n: out std_logic; flag_f: out std_logic; cqd: out std_logic; ksel: out std_logic_v

10、ector ( 3 downto 0); csr: out std_logic_vector ( 1 downto 0);end sr;architecture art of sr is signal c_qd: std_logic; signal c_sr: std_logic_vector ( 1 downto 0); signal n,f: std_logic_vector ( 3 downto 0); signal fn,ff: std_logic; signal sel: std_logic_vector ( 3 downto 0); signal q: std_logic_vect

11、or ( 5 downto 0); signal c: std_logic_vector ( 2 downto 0); begin data_n = n; data_f = f; flag_n = fn; flag_f = ff; cqd = c_qd; csr = c_sr; ksel= sel; c(0)= key_in(0); c(1)= key_in(1); c(2)= key_in(2); counter : block is begin process (clk_1k) is begin if(clk_1kevent and clk_1k=1)then q = q+1; end i

12、f; c_qd = q(3); c_sr = q(5 downto 4); end process; sel = 1110when c_sr = 0 else 1101when c_sr = 1 else 1011when c_sr = 2 else 0111when c_sr = 3 else 1111;end block counter;key_decoder : block signal z : std_logic_vector ( 4 downto 0); begin process(c_qd) begin z n n n n n n n n n n n f f f =1000; en

13、d case; end if; end process; fn = not ( n(3) and n(2) and n(1) and n(0); ff = f(2) or f(0); end block key_decoder;end architecture art;3.1.2 密碼鎖輸入模塊的原理圖 圖 3-1 密碼鎖輸入模塊的原理圖3.1.3 密碼鎖輸入模塊的仿真圖 3-2 密碼鎖輸入模塊的仿真圖圖 3-2 為密碼鎖輸入電路的仿真結(jié)果圖,圖中的輸出信號(hào) csr,cqd 是為便于仿真時(shí)觀察中間結(jié)果而增加的觀測點(diǎn)的輸出,調(diào)試好后程序中的相應(yīng)語句應(yīng)注釋掉。3.2 密碼鎖控制模塊密碼鎖控制模塊密

14、碼鎖控制模塊是整個(gè)系統(tǒng)的控制中心,主要控制數(shù)字按鍵輸入和功能按鍵輸入,如清除、上鎖和解鎖等。3.2.1 密碼鎖控制模塊的 vhdl 源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity ctrl isport ( data_n: in std_logic_vector ( 3 downto 0); data_f: in std_logic_vector ( 3 downto 0); flag_n: in std_logic;

15、flag_f: in std_logic; mimain: buffer std_logic; setin: buffer std_logic; old: buffer std_logic; cqd: in std_logic; enlock: out std_logic; data_bcd: out std_logic_vector ( 15 downto 0);end ctrl;architecture art of ctrl is signal acc, reg: std_logic_vector (15 downto 0); begin process(cqd,flag_f) is b

16、egin if cqdevent and cqd= 0 then if flag_f =1 then if(data_f = 0100)then acc= 1111111111111111; mimain= 0;setin=0;old enlock mimain= 1; acc setin= 1; acc= 1111111111111111; oldnull; end case; elsif(mimain= 1)then if acc = reg then enlock= 0; mimain= 0; else mimain= 0; end if; elsif(setin =1)then if(

17、old = 1)then if(acc = reg)then old= 0; else setin= 0; old= 0; end if; else if (acc1001100110011001)then reg= acc; setin= 0; end if; end if; end if; end if; elsif flag_n = 1then acc= acc(11 downto 0) & data_n; end if; end if; end process; data_bcddout7dout7dout7dout7dout7dout7dout7dout7dout7dout7dout

18、7= 0000000; end case; end process;end architecture art;3.3.2 密碼鎖譯碼模塊的原理圖圖 3-5 密碼鎖譯碼模塊的原理圖3.3.3 密碼鎖譯碼模塊的仿真圖 3-6 密碼鎖譯碼模塊的仿真圖上述仿真圖輸入為鍵盤按鍵數(shù),通過七段數(shù)碼管相應(yīng)的顯示出來。從上圖可以看出,當(dāng) bcd 數(shù)碼輸入(data_bcd)為“09”時(shí),則在七段譯碼輸出(dout7)相應(yīng)為“09” ,如此循環(huán)往復(fù)。3.4 密碼鎖系統(tǒng)密碼鎖系統(tǒng)由輸入、控制和譯碼三個(gè)模塊組成的密碼鎖系統(tǒng),可以實(shí)現(xiàn)密碼輸入、密碼清除、密碼更改、密碼上鎖和密碼解除等多種功能。3.4.1 系統(tǒng)整體組裝設(shè)計(jì)原理圖將前面各個(gè)設(shè)計(jì)好的功能模塊進(jìn)行整合,可得到一個(gè)完整的電子密碼鎖系統(tǒng)的整體組裝設(shè)計(jì)原理圖,如圖 3-7 所示。圖 3-7 系統(tǒng)整體組裝設(shè)計(jì)原理圖通過上圖的系統(tǒng)整體組裝設(shè)計(jì)原理圖進(jìn)行編譯可以生成圖 3-8 的系統(tǒng)原理

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論