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

下載本文檔

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

文檔簡介

1、EDA課程設(shè)計(jì)報告電子密碼鎖設(shè)計(jì) 學(xué) 校: 海南大學(xué)院 (系):信 息 學(xué) 院 專 業(yè):通 信 一 班 學(xué)生姓名:學(xué) 號:組 員:指導(dǎo)教師: 2013年6月13日目錄目錄2一 概述3二 設(shè)計(jì)要求3三 總體框圖3四 功能模塊44.1 輸入模塊44.2 控制模塊74.5顯示模塊12五 總體設(shè)計(jì)電路圖14六 設(shè)計(jì)心得體會15一 概述電子密碼鎖在生活中十分常見,在這我將設(shè)計(jì)一個具有較低成本的電子密碼鎖,本文講述了我整個設(shè)計(jì)過程及收獲。講述了電子密碼鎖的的工作原理以及各個模塊的功能,并講述了所有部分的設(shè)計(jì)思路,對各部分電路方案的選擇、元器件的篩選、以及對它們的調(diào)試、對波形圖的分析,到最后的總體圖的分析。

2、二 設(shè)計(jì)要求 本設(shè)計(jì)名稱為電子密碼鎖,用四個模塊,分別為輸入模塊、控制模塊、掃描器模塊、顯示模塊,來控制密碼的輸入、驗(yàn)證與顯示。設(shè)計(jì)所要實(shí)現(xiàn)的功能為:1 數(shù)碼輸入:手動輸入3組四位二進(jìn)制密碼。2 數(shù)碼驗(yàn)證:開鎖時輸入密碼后,撥動 RT鍵使其為高電平,而CHANGE為低電平檢測,密碼正確時開鎖,輸出LOCK燈亮,表示開鎖成功。3 錯誤顯示:當(dāng)密碼輸入錯誤時,LOCK燈亮,LOCK滅,表示開鎖失敗。4 更改密碼:當(dāng)改變密碼時,按下CHANGE鍵使其為高電平,而RT為低電平時,可改變密碼。5 密碼清除:按下RST可清除前面的輸入值,清除為“000”。三 總體框圖1)設(shè)計(jì)方案:電子密碼鎖,主要由三部分

3、組成:密碼輸入電路、密碼鎖控制電路和密碼鎖顯示電路。作為電子密碼鎖的輸入電路,可選用的方案有撥碼與按鍵來控制輸入和觸摸式鍵盤輸入等多種。撥碼與按鍵和觸摸式4*4鍵盤相比簡單方便而且成本低,構(gòu)成的電路簡單,本設(shè)計(jì)中采用撥碼與按鍵來作為該設(shè)計(jì)的輸入設(shè)備。數(shù)字電子密碼鎖的顯示信息電路可采用LED數(shù)碼顯示管和液晶屏顯示兩種。液晶顯示具有高速顯示、可靠性高、易于擴(kuò)展和升級的特點(diǎn),但是普通的液晶存在亮度低、對復(fù)雜環(huán)境適應(yīng)能力差的特點(diǎn),但是在本設(shè)計(jì)中任然使用LED數(shù)碼管。根據(jù)以上選定的輸入設(shè)備與與顯示器件,并考慮到現(xiàn)實(shí)各項(xiàng)密碼鎖功能的具體要求,與系統(tǒng)的設(shè)計(jì)要求,系統(tǒng)設(shè)計(jì)采用自頂向下的設(shè)計(jì)方案。整個密碼鎖系統(tǒng)

4、的總體總體框圖如下圖。電子密碼鎖系統(tǒng)總體框圖四 功能模塊4.1 輸入模塊1) 功能介紹輸入3組四位二進(jìn)制密碼,代表3為密碼,每一組的取值從0000到10012) 輸入模塊與仿真圖形3)程序輸入程序如下: LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SR IS PORT (PUL1,PUL2,PUL3:IN STD_LOGIC_VECTOR(3 DOWNTO 0); Q1,Q2,Q3:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); END SR;ARCHITECTURE BEHAVE OF SR IS SIGNAL TEMP

5、:STD_LOGIC; BEGIN PROCESS(PUL1,PUL2,PUL3) BEGIN - IF M'EVENT AND M='1' THEN -IF PUL='1' THEN CASE PUL1 ISWHEN "0000"=>Q1<="0000"WHEN "0001"=>Q1<="0001"WHEN "0010"=>Q1<="0010"WHEN "0011"=>Q1

6、<="0011"WHEN "0100"=>Q1<="0100"WHEN "0101"=>Q1<="0101"WHEN "0110"=>Q1<="0110"WHEN "0111"=>Q1<="0111"WHEN "1000"=>Q1<="1000"WHEN "1001"=>Q1<=&

7、quot;1001"WHEN OTHERS=>Q1<="0000"END CASE;CASE PUL2 ISWHEN "0000"=>Q2<="0000"WHEN "0001"=>Q2<="0001"WHEN "0010"=>Q2<="0010"WHEN "0011"=>Q2<="0011"WHEN "0100"=>Q2&

8、lt;="0100"WHEN "0101"=>Q2<="0101"WHEN "0110"=>Q2<="0110"WHEN "0111"=>Q2<="0111"WHEN "1000"=>Q2<="1000"WHEN "1001"=>Q2<="1001"WHEN OTHERS=>Q2<="0000&q

9、uot;END CASE;CASE PUL3 ISWHEN "0000"=>Q3<="0000"WHEN "0001"=>Q3<="0001"WHEN "0010"=>Q3<="0010"WHEN "0011"=>Q3<="0011"WHEN "0100"=>Q3<="0100"WHEN "0101"=>Q3&l

10、t;="0101"WHEN "0110"=>Q3<="0110"WHEN "0111"=>Q3<="0111"WHEN "1000"=>Q3<="1000"WHEN "1001"=>Q3<="1001"WHEN OTHERS=>Q3<="0000"END CASE; - TEMP<='1' -ELSE TEMP<

11、;='0' -END IF; -END IF; END PROCESS;-Q<=TEMP; END BEHAVE;4.2 控制模塊1)功能介紹開鎖時輸入密碼后,撥動 RT鍵使其為高電平,而CHANGE為低電平檢測,密碼正確時開鎖,輸出LOCK燈亮,表示開鎖成功。當(dāng)密碼輸入錯誤時,LOCK燈滅,表示開鎖失敗。當(dāng)改變密碼時,按下CHANGE鍵使其為高電平,而RT為低電平時,可改變密碼。按下RST可清除前面的輸入值,清除為“000”。2) 控制模塊與仿真圖形 當(dāng)CHANGE為高電平且rt為低電平時開始輸入密碼這時lock為高電平,當(dāng)rt為高電平,change為低電平時開始檢測密

12、碼,如上圖開始密碼為“311”當(dāng)再次出現(xiàn)“311”時lock為高電平,當(dāng)密碼錯誤時lock為低電平。3)其程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CONTROL ISPORT(NB:IN STD_LOGIC_VECTOR(3 DOWNTO 0); NS:IN STD_LOGIC_VECTOR(3 DOWNTO 0); NG:IN STD_LOGIC_VECTOR(3 DOWNTO 0); CLK:IN STD_LOGIC; CHANGE,RT: IN STD_LOGIC; SB:OUT STD_LOGIC_VECTOR(3 DO

13、WNTO 0); SS:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SG:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);LOCKOPEN,LOCKCLOSE:OUT STD_LOGIC);END ENTITY CONTROL;ARCHITECTURE ART OF CONTROL ISSIGNAL ENABLE,ENABLE1:STD_LOGIC;SIGNAL DA,DB,DC:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINENABLE<=CHANGE AND(NOT RT);ENABLE1<=RT AND(NOT

14、CHANGE);PROCESS(CLK,NB,NS,NG) ISBEGINIF CLK'EVENT AND CLK='1' THEN IF ENABLE='1' THENDA<=NB;DB<=NS;DC<=NG; LOCKOPEN<='0' LOCKCLOSE<='1' elsif ENABLE1='1' THEN IF ( DA=NB AND DB=NS AND DC=NG) THEN LOCKOPEN<='1' LOCKCLOSE<='0

15、' ELSE LOCKOPEN<='0' LOCKCLOSE<='1' END IF; END IF; END IF;-END IF; SS<=NS; SG<=NG; SB<=NB; END PROCESS;END ARCHITECTURE ART;4.3掃描器部:其功能是從控制部分的3個輸出中選擇出一組四位二進(jìn)制送往譯碼器,同時把掃描信號SEL送往二四譯碼器1)控制模塊與仿真圖形:2)其程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_116

16、4.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY sel ISPORT(QIN1,QIN2,QIN3:IN STD_LOGIC_VECTOR(3 DOWNTO 0);CLK,RST:IN STD_LOGIC;QOUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);sel:OUT STD_LOGIC_VECTOR(1 DOWNTO 0);END sel;ARCHITECTURE ART OF sel ISBEGINPROCESS(CLK,RST)VARIABLE CNT:INTEGER RANGE 0 TO 2;BEGINIF (RST

17、='0') THENCNT:=0;sel <="00"QOUT<="0000"ELSIF CLK'EVENT AND CLK='1' THENIF CNT=2 THENCNT:=0;ELSE CNT:=CNT+1;END IF;CASE CNT ISWHEN 0=>QOUT<=QIN1;sel <="00"WHEN 1=>QOUT<=QIN2;sel<="01"WHEN 2=>QOUT<=QIN3;sel<=&

18、quot;10"WHEN OTHERS=>QOUT<="1111"sel<="11"END CASE;END IF;END PROCESS;END ARCHITECTURE ART;4.4二四譯碼器:1)控制模塊與仿真圖形:2)其程序如下:-DECODER24A.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY DECODER24A IS PORT(A:IN STD_LOGIC_VECTOR(1 DOWNTO 0

19、); B:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END ENTITY DECODER24A;ARCHITECTURE ART OF DECODER24A ISBEGINPROCESS(A)ISBEGINCASE A IS WHEN "00"=>B<="0001" WHEN "01"=>B<="0010" WHEN "10"=>B<="0100" WHEN OTHERS=>B<="1111&q

20、uot; END CASE; END PROCESS;END ARCHITECTURE ART;4.5顯示模塊1)功能介紹將密碼用BCD七段數(shù)碼管顯示2)顯示模塊與仿真波形圖如下圖:上圖將BCD碼轉(zhuǎn)化到七段譯碼電路上 BCD-七段數(shù)碼管的真值表輸入 輸出D C B A Y1 Y2 Y3 Y4 Y5 Y6 Y7 字形0 0 0 0 1 1 1 1 1 1 0 00 0 0 1 0 1 1 0 0 0 0 10 0 1 0 1 1 0 1 1 0 1 20 0 1 1 0 1 1 1 0 0 1 30 1 0 0 0 1 1 0 0 1 1 40 1 0 1 1 0 1 1 0 1 1 50 1

21、1 0 1 0 1 1 1 1 1 60 1 1 1 1 1 1 0 0 0 0 71 0 0 0 1 1 1 1 1 1 1 81 0 0 1 1 1 1 0 0 1 1 9表5-23)程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SEG7 ISPORT(num:IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END SEG7;ARCHITECTURE ACT OF SEG7 I

22、SBEGIN LED<="1111110"WHEN num="0000"ELSE "0110000"WHEN num ="0001"ELSE "1101101"WHEN num ="0010"ELSE "1111001"WHEN num ="0011"ELSE "0110011"WHEN num ="0100"ELSE "1011011"WHEN num ="0

23、101"ELSE "1011111"WHEN num ="0110"ELSE "1110000"WHEN num ="0111"ELSE "1111111"WHEN num ="1000"ELSE "1111011"WHEN num ="1001"ELSE "1110111"WHEN num ="1010"ELSE "0011111"WHEN num ="1011"ELSE "1001110"WHEN num ="1100"ELSE "0111101"WHEN num ="1101"ELSE "1001111"WHEN num ="1110"E

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論