4位數(shù)字密碼鎖畢業(yè)設(shè)計(jì)_第1頁
4位數(shù)字密碼鎖畢業(yè)設(shè)計(jì)_第2頁
4位數(shù)字密碼鎖畢業(yè)設(shè)計(jì)_第3頁
4位數(shù)字密碼鎖畢業(yè)設(shè)計(jì)_第4頁
4位數(shù)字密碼鎖畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

目錄TOC\o"1-5"\h\z1緒論 5\o"CurrentDocument"\h1.設(shè)1計(jì)內(nèi)容 5\o"CurrentDocument"\h1.設(shè)2計(jì)要求 5\o"CurrentDocument"\h2系統(tǒng)設(shè)計(jì) 5\o"CurrentDocument"\h2.1模塊劃分 5\o"CurrentDocument"\h2.1系統(tǒng)原理框圖 5\o"CurrentDocument"\h3功能模塊的實(shí)現(xiàn) 6\o"CurrentDocument"\h3.時(shí)1序電路 6\o"CurrentDocument"\h3.密2碼設(shè)置 7\o"CurrentDocument"\h3.密3碼輸入 7\o"CurrentDocument"\h3.密4碼驗(yàn)證 8\o"CurrentDocument"\h4軟件仿真 95數(shù)字邏輯系統(tǒng)簡(jiǎn)介 105.1Quar軟t件u簡(jiǎn)s介...I I 105.硬2件描述語言 115.2V.H1D語L言 11\o"CurrentDocument"\h5.2V.e2ri語l言o.g 126結(jié)論 13附錄 141時(shí)序電路 14\o"CurrentDocument"\h2密碼設(shè)置輸入 16\o"CurrentDocument"\h3密碼驗(yàn)證 17\o"CurrentDocument"\h參考文獻(xiàn) 19\o"CurrentDocument"\h謝辭 20摘要:本設(shè)計(jì)利用作摘要:本設(shè)計(jì)利用作A為核心控制板,用硬l件o描g述語言進(jìn)行編程,利用計(jì)算機(jī)軟硬件控制技術(shù),設(shè)計(jì)一個(gè)基于FPG的A數(shù)字密碼鎖,能實(shí)現(xiàn)密碼設(shè)定(如果密碼沒設(shè)定則默認(rèn)密碼為000),0密碼輸入及驗(yàn)證,當(dāng)密碼輸入錯(cuò)誤時(shí)報(bào)警或則指示燈亮;反之,密碼輸入正確時(shí),另外一個(gè)指示燈亮。將程序下載到Alt公e司r的aCycl系o列n目標(biāo)芯片EP2C5T14上4調(diào)C試8通過,并觀察實(shí)際現(xiàn)象,滿足設(shè)計(jì)要求。關(guān)鍵詞:FPGAVeril數(shù)o字g密碼鎖AbstractThedesignusingtheFPGAasthecoreofthecontrolpanel,Veriloghardwaredescriptionlanguageforprogramming,Computerhardwareandsoftwarecontroltechnology,designanFPGA-baseddigitalcodelock,Setthepassword(ifthepasswordisnotsetthenthedefaultpasswordis000000),Passwordinputandverification,Alarmorthelightwhenthepasswordinputerror;Onthecontrary,enterthecorrectpassword,alight.ProgramdownloadedtothetargetchipEP2C5T144C8Altera’sCycloneseriesthroughdebugging,andtoobservetheactualphenomenon,tomeetthedesignrequirements.Keywords:FPGAVerilogDigitalcodelock引言隨著人們生活水平的提高,如何實(shí)現(xiàn)家庭防盜這一問題也變得尤其的突出,傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡(jiǎn)單,被撬的事件屢見不鮮,電子鎖由于其保密性高,使用靈活性好,安全系數(shù)高,受到了廣大用戶的青睞,電子密碼鎖的使用體現(xiàn)了人們消費(fèi)水平、保安意識(shí)和科技水平的提高,而且避免了攜帶甚至丟失鑰匙的麻煩。目前設(shè)計(jì)密碼鎖的方VerilogVerilog是法很多,例如用傳統(tǒng)的 PCB板設(shè)計(jì)、用VerilogVerilog是可以更加快速、靈活地設(shè)計(jì)出符合各種要求的密碼鎖,優(yōu)于其他設(shè)計(jì)方法。一種符合 IEEE標(biāo)準(zhǔn)的硬件描述語言,其最大的特點(diǎn)是借鑒高級(jí)程序設(shè)計(jì)語言的功能特性,對(duì)電路的行為與結(jié)構(gòu)進(jìn)行高度抽象化、規(guī)范化的形式描述,并對(duì)設(shè)計(jì)的不同層次、不同領(lǐng)域的模型驗(yàn)證與綜合優(yōu)化等處理,是設(shè)計(jì)過程延伸到高度自動(dòng)化。緒論1.設(shè)1計(jì)內(nèi)容設(shè)計(jì)一個(gè)4位數(shù)字密碼鎖子系統(tǒng).設(shè)2計(jì)要求1、能夠預(yù)設(shè)4位密碼;2、具有密碼輸入及檢測(cè)功能;3、利用MAXplus對(duì)所設(shè)計(jì)的電路進(jìn)行仿真并分析結(jié)果。系統(tǒng)設(shè)計(jì)本設(shè)計(jì)中,F(xiàn)PGA系統(tǒng)采用硬件描述語言 Verilog按模塊化方式進(jìn)行設(shè)計(jì), 并將各模塊集成于FPGA芯片中,然后通過 QuartusII9.0軟件開發(fā)平臺(tái)對(duì)設(shè)計(jì)文件自動(dòng)完成邏輯編譯、邏輯化簡(jiǎn)、綜合及優(yōu)化、邏輯布局布線、邏輯仿真,最后對(duì) FPGA芯片進(jìn)行編程,實(shí)現(xiàn)系統(tǒng)的設(shè)計(jì)要求。模塊劃分密碼鎖的的構(gòu)成主要由密碼輸入、密碼設(shè)置,此外密碼鎖必須能夠保存已設(shè)置的密碼,因而需要一個(gè)寄存器來保存密碼, 同時(shí)由于控制電路和報(bào)警電路要用到不同的時(shí)鐘,因而需要一個(gè)時(shí)序產(chǎn)生電路來生成需要的不同信號(hào),采用分頻方法實(shí)現(xiàn)。2.1系統(tǒng)原理框圖6電路,根據(jù)電路功能,在這里設(shè)6電路,根據(jù)電路功能,在這里設(shè)計(jì)的密碼鎖以4位2進(jìn)制代碼作為密碼的電子密碼鎖。其原理框圖如下圖 2.1所示:圖2.1電子密碼鎖原理框圖3功能模塊的實(shí)現(xiàn)該模塊主要是完成密碼設(shè)置,密碼輸入,密碼驗(yàn)證功能。.時(shí)1序電路1HZ的時(shí)鐘脈沖信號(hào),而驅(qū)動(dòng)蜂鳴1HZ的時(shí)鐘脈沖信號(hào),而驅(qū)動(dòng)蜂鳴1024HZ)信號(hào)來器工作需要的很高頻率的脈沖信號(hào),因而這里采用輸入一個(gè)高頻脈沖(驅(qū)動(dòng)蜂鳴器,采用分頻的方法得到 1HZ的計(jì)時(shí)脈沖。process(clk_1k)variablecnt1:integer:=0;beginifrising_edge(clk_1k)thenifcnt1=512thenclk_1<=notclk_1;cnt1:=0;elsecnt1:=cnt1+1;endif;endif;endprocess;程序說明:clk_1k為輸入的1024HZ高頻脈沖,程序說明:clk_1k為輸入的1024HZ高頻脈沖,cnt為分頻得到的1HZ計(jì)時(shí)脈沖。密2碼設(shè)置為了安全性,密碼鎖必須能夠重復(fù)的設(shè)定密碼,在設(shè)定密碼鎖后,應(yīng)該設(shè)置一個(gè)寄存器來存儲(chǔ)設(shè)定的密碼。process(rst,password,enter_p)isbeginifrst='0'thenifenter_p='1'thenram<=password;en1<='1';endif;endif;endprocess;enter_p為在這里為密enter_p高電平時(shí)en2有效,控制電路的計(jì)時(shí)器程序說明:rst低電平時(shí)所有的模塊復(fù)位,只有密碼設(shè)置模塊工作;

enter_p為在這里為密enter_p高電平時(shí)en2有效,控制電路的計(jì)時(shí)器碼設(shè)置使能端,高電平有效。密碼設(shè)置的仿真波形如下圖,由圖中可以清楚地看到在寄存器ram中得到了輸入的密碼 1001。.密3碼輸入密碼輸入部分要求在密碼開始輸入時(shí)進(jìn)行計(jì)時(shí),超時(shí)了要求報(bào)警,因此在密碼輸入時(shí)設(shè)置一個(gè)計(jì)時(shí)使能信號(hào) en2,密碼開始輸入時(shí)使能信號(hào)開始計(jì)時(shí);而且在密碼確認(rèn)鍵按下之前,電路不能對(duì)輸入密碼和已設(shè)置密碼進(jìn)行比較,因此需要設(shè)置一個(gè)寄存器,來存儲(chǔ)輸入的數(shù)據(jù),當(dāng)確認(rèn)鍵按下時(shí),就將寄存器里的數(shù)據(jù)送給控制部分進(jìn)行比較。process(rst,enter_c,en1,code)beginifrst='1'thenifen1='1'thenifenter_c='1'thencode_tmp<=code;en2<='1';endif;endif;endif;endprocess;密碼輸入電路圖如下圖3.21X4SIP-W?<^w?——?-l?6lcp??、:J^7<S20D74HC147H4V?^??IXGSlP圖3.1密碼輸入電路此密碼輸入電路使用 74HC14710線-4線優(yōu)先編碼器,由于 147只有9個(gè)輸入端,因此加入了數(shù)碼0的按鍵,當(dāng)輸入端有鍵被按下時(shí),輸出端輸出該鍵的 BCD碼的反碼,并且GS/輸出為 0,代表有鍵被按下。 GS/用于控制密碼存儲(chǔ)控制電路的移位。該電路有密碼確認(rèn)按鍵、密碼修改按鍵和輸入清除按鈕,密碼確認(rèn)按鍵和密碼修改按鍵的作用是密碼輸入完畢時(shí),對(duì)控制電路的移位電路清零。密碼確認(rèn)按鈕還接密碼驗(yàn)證電路中的三態(tài)輸出門,還連接密碼驗(yàn)證電路中的 JK觸發(fā)器的清零端,用于對(duì)這個(gè)觸發(fā)器的清零。輸出清除按鍵按下時(shí)本次輸入清零。密碼輸入(修改)電路中的按鍵按下去都自動(dòng)彈上來,也就是說按鍵只有被按下時(shí)才連接低電平,否則接高電平。密4碼驗(yàn)證該模塊中采用自定義存儲(chǔ)器RAM進(jìn)行密碼的存儲(chǔ),主要使用case該模塊中采用自定義存儲(chǔ)器RAM進(jìn)行密碼的存儲(chǔ),主要使用case語句和if_else語句進(jìn)行程序的銜接。密碼驗(yàn)證電路圖如下圖3.2'4HC劇Njn45U4A:■6≡>7I —:_^--^'?■■倔C2。NKV1D?8≡>g?10U6A::IT'4HC2PNj4M::二接總"74HC107N4V?2674HC(MDjn接密碼修二改按鍵:"在密碼輸叉電4路的確認(rèn)按鈕27接報(bào)警電路:2512語句進(jìn)行程序的銜接。密碼驗(yàn)證電路圖如下圖3.2'4HC劇Njn45U4A:■6≡>7I —:_^--^'?■■倔C2。NKV1D?8≡>g?10U6A::IT'4HC2PNj4M::二接總"74HC107N4V?2674HC(MDjn接密碼修二改按鍵:"在密碼輸叉電4路的確認(rèn)按鈕27接報(bào)警電路:2512接密碼確認(rèn)按鈕14U8AJgnd15??'4HC2τθt<4V?16圖3.2密碼驗(yàn)證電路密碼驗(yàn)證電路用16個(gè)異或門組成,每個(gè)異或門的輸入來自密碼存儲(chǔ)電路的輸入密碼存儲(chǔ)芯片和預(yù)設(shè)密碼存儲(chǔ)芯片,比較輸入密碼是否和預(yù)設(shè)密碼相同,再加上與非門電路,判斷全部輸入是否為 1,為1則表示輸入正確,否則錯(cuò)誤。密碼輸入電路中的確認(rèn)按鈕控制比較結(jié)果輸出的三態(tài)門,輸入四位密碼后,按下確認(rèn)鍵,驗(yàn)證后的結(jié)果輸出至輸入預(yù)設(shè)密碼—開鎖報(bào)警電路。密碼修改按鍵連接 JK觸發(fā)器的CLK,修改密碼流程是:輸入預(yù)設(shè)密碼——按下修改密碼按鍵——輸入新密碼——按下密碼確認(rèn)按鍵,修改結(jié)束。在輸入新密碼后在按下密碼確認(rèn)按鍵使 JK觸發(fā)器清零,清零后使得預(yù)設(shè)密碼存儲(chǔ)芯片不再存儲(chǔ)輸入密碼。JK觸發(fā)器的正向輸出端接報(bào)警電路,如果密碼輸入錯(cuò)誤就會(huì)報(bào)警。軟件仿真rst低電平時(shí)所有的模塊復(fù)位,只有密碼設(shè)置模塊工作;enter_p為在這里為密enter_p高電平時(shí)password為設(shè)置密碼時(shí)的輸入端,enter_p為在這里為密enter_p高電平時(shí)碼設(shè)置使能端,高電平有效。密碼設(shè)置的仿真波形如下圖,由圖中可以清楚地看到在寄存器 ram中得到了輸入的密碼 1001。rst置高,設(shè)置密碼模塊不工作,其他部分正常工作, en1為高時(shí)代表密碼設(shè)置完畢,密碼鎖開始工作; enter_c是密碼輸入使能信號(hào),高電平時(shí)表示開始密碼輸入,此時(shí)code_tmp中開始存儲(chǔ)輸入的數(shù)據(jù),計(jì)時(shí)使能信號(hào) en2也變成高電平。密碼輸入仿真波形如下, 由圖中可清楚的看到在 enter_c為高時(shí),寄存器code_tmp中存儲(chǔ)了輸入的數(shù)據(jù) code(系統(tǒng)仿真時(shí)有10ns的延時(shí))圖4.2密碼輸入仿真波形5數(shù)字邏輯系統(tǒng)簡(jiǎn)介5.1Quar軟t件u簡(jiǎn)s介IIQuartusII是Altera公司在221世紀(jì)初推出的可編程邏輯器件的集成開發(fā)軟件,這個(gè)軟件是該公司前一代可編程邏輯器件集成開發(fā)軟件 MAX+PLUSII的更新?lián)Q代產(chǎn)品。QuartusII集成開發(fā)軟件支持可編程邏輯器件開發(fā)的整個(gè)過程, 它提供一種與器件無關(guān)的設(shè)計(jì)環(huán)境。軟件界面友好,使設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、設(shè)計(jì)處理和器件編程。QuartusII集成開發(fā)軟件提供了完整的多平臺(tái)設(shè)計(jì)環(huán)境, 能滿足各種特定設(shè)計(jì)的需要。QuartusII設(shè)計(jì)工具支持 VHDL、VerilogHDL硬件描述語言的設(shè)計(jì)流程。它也是在片可編程系統(tǒng)( SystemonaProgrammableChip,SOPC)的綜合設(shè)計(jì)環(huán)境。另外,QuartusII集成開發(fā)軟件也可以利用第三方軟件的結(jié)果,并支持第三方軟件的工作。為加快應(yīng)用系統(tǒng)的開發(fā), QuartusII集成開發(fā)軟件包含許多十分有用的參數(shù)化模塊庫(LibraryofParameterizedModules,LPM),它們是復(fù)雜或高級(jí)系統(tǒng)構(gòu)建的重要組

成部分,在數(shù)字系統(tǒng)設(shè)計(jì)中被大量使用。 當(dāng)然這些模塊也可以與用戶設(shè)計(jì)文件一起使用。Altera提供的LPM函數(shù)均基于Altera公司器件的結(jié)構(gòu)做了優(yōu)化設(shè)計(jì),在設(shè)計(jì)中合理地調(diào)用LPM不僅可以加快設(shè)計(jì)進(jìn)程,還可以提高系統(tǒng)性能。有些 LPM宏功能模塊的使用必須依賴于一些Altera公司特定器件的硬件功能,如各類存儲(chǔ)器模塊、 DSP模塊、LVDS驅(qū)動(dòng)器模塊、PLL及SERDES和DDIO模塊等,這在使用中需要注意。硬2件描述語言2V.H1D語L言VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外, VHDL的語言形式和描述風(fēng)格與句法是十分類似于一般的計(jì)算機(jī)高級(jí)語言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱設(shè)計(jì)實(shí)體(可以是一個(gè)元件,一個(gè)電路模塊或一個(gè)系統(tǒng))分成外部(或稱可視部分,及端口)和內(nèi)部(或稱不可視部分) ,既涉及實(shí)體的內(nèi)部功能和算法完成部分。在對(duì)一個(gè)設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其他的設(shè)計(jì)就可以直接調(diào)用這個(gè)實(shí)體。這種將設(shè)計(jì)實(shí)體分成內(nèi)外部分的概念是 VHDL系統(tǒng)設(shè)計(jì)的基本點(diǎn)。特點(diǎn):VHDL語言能夠成為標(biāo)準(zhǔn)化的硬件描述語言并獲得廣泛應(yīng)用,它自身必然具有VHDL語言主要具有以下優(yōu)點(diǎn):VHDL語言程序就可以描VHDLVHDL語言主要具有以下優(yōu)點(diǎn):VHDL語言程序就可以描VHDL既支持自頂向下的設(shè)計(jì)方式,VHDL語言功能強(qiáng)大,設(shè)計(jì)方式多樣VHDL語言具有強(qiáng)大的語言結(jié)構(gòu),只需采用簡(jiǎn)單明確的述十分復(fù)雜的硬件電路。同時(shí),它還具有多層次的電路設(shè)計(jì)描述功能。此外,語言能夠同時(shí)支持同步電路、異步電路和隨機(jī)電路的設(shè)計(jì)實(shí)現(xiàn),這是其他硬件描述語言所不能比擬的。 VHDL語言設(shè)計(jì)方法靈活多樣,也支持自底向上的設(shè)計(jì)方法; 既支持模塊化設(shè)計(jì)方法,也支持層次化設(shè)計(jì)方法。VHDL語言具有強(qiáng)大的硬件描述能力VHDL語言具有多層次的電路設(shè)計(jì)描述功能,既可描述系統(tǒng)級(jí)電路,也可以描述門級(jí)電路;描述方式既可以采用行為描述、寄存器傳輸描述或者結(jié)構(gòu)描述,也可以采用三者的混合描述方式。同時(shí), VHDL語言也支持慣性延遲和傳輸延遲,這樣可以準(zhǔn)確地建立硬件電路的模型。 VHDL語言的強(qiáng)大描述能力還體現(xiàn)在它具有豐富的數(shù)據(jù)類型。 VHDL語言既支持標(biāo)準(zhǔn)定義的數(shù)據(jù)類型,也支持用戶定義的數(shù)據(jù)類型,這樣便會(huì)給硬件描述帶來較大的自由度。VHDL語言具有很強(qiáng)的移植能力VHDL語言很強(qiáng)的移植能力主要體現(xiàn)在: 對(duì)于同一個(gè)硬件電路的 VHDL語言描述,它可以從一個(gè)模擬器移植到另一個(gè)模擬器上、從一個(gè)綜合器移植到另一個(gè)綜合器上或者從一個(gè)工作平臺(tái)移植到另一個(gè)工作平臺(tái)上去執(zhí)行。VHDL語言的設(shè)計(jì)描述與器件無關(guān)采用VHDL語言描述硬件電路時(shí),設(shè)計(jì)人員并不需要首先考慮選擇進(jìn)行設(shè)計(jì)的器件。這樣做的好處是可以使設(shè)計(jì)人員集中精力進(jìn)行電路設(shè)計(jì)的優(yōu)化,而不需要考慮其他的問題。當(dāng)硬件電路的設(shè)計(jì)描述完成以后, VHDL語言允許采用多種不同的器件結(jié)構(gòu)來實(shí)現(xiàn)。5)VHDL語言程序易于共享和復(fù)用VHDL語言采用基于庫 (library)的設(shè)計(jì)方法。在設(shè)計(jì)過程中,設(shè)計(jì)人員可以建立各種可再次利用的模塊,一個(gè)大規(guī)模的硬件電路的設(shè)計(jì)不可能從門級(jí)電路開始一步步地進(jìn)行設(shè)計(jì),而是一些模塊的累加。這些模塊可以預(yù)先設(shè)計(jì)或者使用以前設(shè)計(jì)中的存檔模塊,將這些模塊存放在庫中,就可以在以后的設(shè)計(jì)中進(jìn)行復(fù)用。由于VHDL語言是一種描述、模擬、綜合、優(yōu)化和布線的標(biāo)準(zhǔn)硬件描述語言,因此它可以使設(shè)計(jì)成果在設(shè)計(jì)人員之間方便地進(jìn)行交流和共享,從而減小硬件電路設(shè)計(jì)的工作量,縮短開發(fā)周期。5.2V.e2ri語l言ogVerilogHDL是目前應(yīng)用最為廣泛的硬件描述語言. VerilogHDL可以用來進(jìn)行各種層次的邏輯設(shè)計(jì),也可以進(jìn)行數(shù)字系統(tǒng)的邏輯綜合,仿真驗(yàn)證和時(shí)序分析等。VerilogHDL適合算法級(jí),寄存器級(jí),邏輯級(jí),開關(guān)級(jí)、系統(tǒng)級(jí)和版圖級(jí)等各個(gè)層次的設(shè)計(jì)和描述.VerilogHDL進(jìn)行設(shè)計(jì)最大的優(yōu)點(diǎn)是其工藝無關(guān)性.這使得工程師在功能設(shè)計(jì),邏輯驗(yàn)證階段可以不必過多考慮門級(jí)及工藝實(shí)現(xiàn)的具體細(xì)節(jié),只需根據(jù)系統(tǒng)設(shè)計(jì)的要求施加不同的約束條件,即可設(shè)計(jì)出實(shí)際電路.VerilogHDL是一種硬件描述語言 (hardwaredescriptionlanguage),為了制作數(shù)字電路而用來描述 ASICs和FPGA的設(shè)計(jì)之用。 Verilog的設(shè)計(jì)者想要以 C編程語言為基礎(chǔ)設(shè)計(jì)一種語言,可以使工程師比較容易學(xué)習(xí)。Verilog是由en:GatewayDesignAutomation公司于大約 1984年開始發(fā)展。GatewayDesignAutomation公司后來被 CadenceDesignSystems于1990年所購并。現(xiàn)在Cadence對(duì)于Gateway公司的 Verilog和Verilog-XL模擬器擁有全部的財(cái)產(chǎn)權(quán)。選擇VHDL還是verilogHDL?這是一個(gè)初學(xué)者最常見的問題。其實(shí)兩種語言的差別并不大,他們的描述能力也是類似的。掌握其中一種語言以后,可以通過短期的學(xué)習(xí),較快的學(xué)會(huì)另一種語言。 選擇何種語言主要還是看周圍人群的使用習(xí)慣,這樣可以方便日后的學(xué)習(xí)交流。當(dāng)然,如果您是專用集成電路 (ASIC)設(shè)計(jì)人員,則必須首先掌握verilog,因?yàn)樵贗C設(shè)計(jì)領(lǐng)域,90%以上的公司都是采用 verilog進(jìn)行IC設(shè)計(jì)。對(duì)于PLD/FPGA設(shè)計(jì)者而言,兩種語言可以自由選擇。

結(jié)論FPGA做主控制模FPGA做主控制模塊,而FPGA塊,而FPGA是現(xiàn)場(chǎng)可編程器件,以及其可用I/O口很多未用,因此還可以做進(jìn)一步拓展,例如可以用12864或者1602做顯示,還可以外加個(gè)蜂鳴器做報(bào)警器等等。展,例如可以用按照畢業(yè)設(shè)計(jì)要求,采取以上步驟完成設(shè)計(jì)任務(wù),達(dá)到了設(shè)計(jì)要求的需要,重點(diǎn)對(duì)硬件、軟件的組成進(jìn)行了分項(xiàng)、模塊化設(shè)計(jì),在這次課程設(shè)計(jì)中,同學(xué)之間互相幫助,有什么不懂的大家在一起商量,發(fā)現(xiàn)我們所學(xué)的知識(shí)實(shí)在是有限,不過我們能夠充分利用網(wǎng)絡(luò)的優(yōu)勢(shì)去查閱資料。最后,課程設(shè)計(jì)中涉及到的電路圖,本想用圖片制作工具繪制,但還是水平有限,最后只能自己動(dòng)手手工找圖,就是效率太低也太累,以后要好好學(xué)習(xí)相關(guān)的圖片制作。在整個(gè)設(shè)計(jì)過程中我認(rèn)識(shí)到了許多東西,也培養(yǎng)了獨(dú)立思考和設(shè)計(jì)的能力,樹立了對(duì)知識(shí)應(yīng)用的信心,相信會(huì)對(duì)今后的學(xué)習(xí)工作和生活有非常大的幫助, 使自己充分體會(huì)到了在設(shè)計(jì)過程中的成功喜悅。雖然這個(gè)設(shè)計(jì)做的不怎么好,但是在設(shè)計(jì)過程中所學(xué)到的東西是這次課程設(shè)計(jì)的最大收獲和財(cái)富,使我終身受益。附錄1時(shí)序電路libraryieee;useieee.std_logic_1164.all;useieee.std_logic_arith.all;useieee.std_logic_unsigned.all;entityexp19isport(Clk:instd_logic;--時(shí)鐘信號(hào)Rst:instd_logic;--復(fù)位信號(hào)Kr:instd_logic_vector(3downto0);--鍵盤行Kc:bufferstd_logic_vector(3downto0);--鍵盤列SPK:outstd_logic;--揚(yáng)聲器輸出KEY_State:outstd_logic;--按鍵指示Door:bufferstd_logic;--門狀態(tài)Display:outstd_logic_vector(7downto0);--七段碼管顯示SEG_SEL:bufferstd_logic_vector(2downto0));--七段碼管片選endexp19;architecturebehaveofexp19issignalkeyr,keyc:std_logic_vector(3downto0);signalkcount:std_logic_vector(2downto0);signalkflag1,kflag2:std_logic;signalbuff1,buff2,buff3,buff4,buff5,buff6:integerrange0to15;signalpush_num:integerrange0to15;--按鍵次數(shù)signalDisp_Temp:integerrange0to15;signalDisp_Decode:std_logic_vector(7downto0);signalSEC1,SEC10:integerrange0to9;signalClk_Count1:std_logic_vector(3downto0);--1KHz時(shí)鐘分頻計(jì)數(shù)器signalClk_Count2:std_logic_vector(9downto0);--2Hz時(shí)鐘分頻計(jì)數(shù)器signalClk1KHz:std_logic;signalClk2Hz:std_logic;signalClk1Hz:std_logic;signalError_Num:integerrange0to3;signalError_Flag:std_logic;signalError_Count:std_logic_vector(2downto0);signalMusic_Count:std_logic_vector(2downto0);beginprocess(Clk)beginif(Clk'eventandClk='1')thenif(Clk_Count1<10)thenClk_Count1<=Clk_Count1+1;elseendif;endif;endprocess;Clk1KHz<=Clk_Count1(2);process(Clk1KHz)beginif(Clk1KHz'eventandClk1KHz='1')thenif(Clk_Count2<1000)thenClk_Count2<=Clk_Count2+1;elseendif;endif;endprocess;Clk2Hz<=Clk_Count2(9);process(Clk2Hz)beginif(Clk2Hz'eventandClk2Hz='1')thenClk1Hz<=notClk1Hz;endif;endprocess;2密碼設(shè)置輸入process(rst,password,enter_p)isbeginifrst='0'thenifenter_p='1'thenram<=password;en1<='1';endif;endif;endprocess;process(rst,enter_c,en1,code)beginifrst='1'thenifen1='1'thenifenter_c='1'thencode_tmp<=code;en2<='1';endif;endif;endif;endprocess;3密碼驗(yàn)證process(Clk1KHz,Rst)--密碼校驗(yàn)beginif(Rst='0')thenDoor<='0';Error_Num<=0;Error_Flag<='0';elsif(Clk1KHz'eventandClk1KHz='1')thenif(push_num=5andError_Num<3)then--修改此處的值可修改門的密碼,此處密碼為 1234if(buff1=1andbuff2=2andbuff3=3andbuff4=4)thenDoor<='1';elseDoor<='0';endif;elsif(push_num=4andError_Num<1)thenif(Door='0')thenError_Flag<='1';Error_Num<=Error_Num+1;elseError_Flag<='0';Error_Num<=0;endif;elsif(Error_Count=4)thenError_Flag<='0';elsif(Error_Flag='1')thenDoor<=notError_Count(0);endif;endif;endprocess;process(Clk2Hz,Rst)beginif(Rst='0'orError_Flag<='0')thenelsif(Clk2Hz'eventandClk2Hz='1'andError_Fl

溫馨提示

  • 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)論