




已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
電子綜合設(shè)計題 目七人搶答器設(shè)計學(xué) 院計信學(xué)院專 業(yè)電子信息工程班 級學(xué)生姓名指導(dǎo)教師2012年6 月18日一、設(shè)計原理所謂表決器就是對于一個行為,由多個人投票,如果同意的票數(shù)過半,就認(rèn)為此行為可行;否則如果否決的票數(shù)過半,則認(rèn)為此行為無效。七人表決器顧名思義就是由七個人來投票,當(dāng)同意的票數(shù)大于或者等于4 時,則認(rèn)為同意;反之,當(dāng)否決的票數(shù)大于或者等于4 時,則認(rèn)為不同意。二、分析討論七人表決器這一功能可以用C語言、匯編語言或VHDL編程后下載到單片機(jī)上實現(xiàn),不過用VHDL編程不僅技術(shù)含量高而且能讓我們更熟練的掌握和使用quartus軟件的步驟和方法。所以我們是采用VHDL編程來實現(xiàn)的。三、設(shè)計準(zhǔn)備根據(jù)七人表決器的原理,我們的準(zhǔn)備過程如下:1、使用Altera的Cyclone II器件,所用的芯片為EP2C35F672C8,開發(fā)平臺為quartus II。2、使用七個撥動開關(guān)(K1K7)作為輸入變量來表示七個投票人,當(dāng)撥動開關(guān)輸入為1時,表示對應(yīng)的人投同意票,否則當(dāng)撥動開關(guān)輸入為0時,表示對應(yīng)的人投反對票。3、使用一個七段數(shù)碼管來顯示同意的票數(shù)。4、使用七個LED(LED2LED8)用來分別記錄投票人的個人投票結(jié)果,當(dāng)LED亮起時就表示對應(yīng)的投票人同意,否則就表示不同意。5、使用一個LED(LED1)來表示最終的投票結(jié)果,當(dāng)LED1亮起時表示表決通過,不亮?xí)r就表示表決不通過。6、使用一個撥動開關(guān)(K8)來達(dá)到復(fù)位要求,即需要復(fù)位時能夠達(dá)到同時清零數(shù)碼管的顯示結(jié)果和LED的顯示情況。7、軟件仿真成功后,通過專用的連接線再用硬件進(jìn)行測試,并將硬件測試的結(jié)果以照片的形式做記錄。四、設(shè)計思路根據(jù)程序設(shè)計的一般步驟,我們首先設(shè)計出七人表決器的系統(tǒng)框圖,也就是說先要確定一個大的設(shè)計方向;然后再根據(jù)設(shè)計要求并結(jié)合系統(tǒng)框圖來設(shè)計程序流程圖;由程序流程圖來編寫VHDL程序,并畫出表決器的外圍引腳圖;再將程序用軟件仿真,軟件仿真成功后進(jìn)行硬件測試。1、系統(tǒng)框圖如下:數(shù)碼管顯示電源系統(tǒng)LED燈顯示FPGA開關(guān)按鈕復(fù)位按鈕2、程序流程圖如下:開始按鍵輸入表決同意人數(shù)(3) Y N表決不通過(LED1不亮)用LED燈顯示反對的投票人表決通過(LED1亮)用LED燈顯示同意的投票人3、外圍管腳圖如下:biaojueqi CLK LED1 CLR LEDAG0:6 K0:6 LED0:6注釋: CLK:系統(tǒng)時鐘 CLR:復(fù)位引腳,當(dāng)需要復(fù)位時,按下該管腳對應(yīng)的開關(guān)就可以復(fù)位。K0:6:表決輸入,分別是七個撥動開關(guān)。LED1:表示最終的投票結(jié)果,當(dāng)LED1亮起時表示表決通過,不亮?xí)r就表示表決不通過。LEDAG0:6:為七段數(shù)碼管,用來顯示同意的票數(shù)。LED0:6:為七個LED(LED2LED8),用來分別記錄投票人的個人投票結(jié)果。五、VHDL源程序設(shè)計根據(jù)設(shè)計要求,我們組設(shè)計的七人表決器程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY BJQ ISPORT(CLK,CLR:IN STD_LOGIC; -CLK為系統(tǒng)時鐘,CLR為復(fù)位按鍵 K:IN STD_LOGIC_VECTOR(6 DOWNTO 0); -撥動開關(guān)輸入表決 Result:OUT STD_LOGIC; -顯示表決是否通過LEDAG,LED:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); -LEDAG為七段數(shù)碼管,用來顯示同意的人數(shù);LED為七個指示燈,用來指示投票人的個人投票結(jié)果。 END ENTITY BJQ; ARCHITECTURE one OF BJQ IS BEGIN PROCESS(K) VARIABLE shu:INTEGER; -定義變量shu來統(tǒng)計同意的個數(shù) BEGIN IF (CLR=1) THEN -不復(fù)位,即正常工作 LEDResult=0;LEDAG=0111111;LEDResult=0;LEDAG=0000110;LEDResult=0;LEDAG=1011011;LEDResult=0;LEDAG=1001111;LEDResult=1;LEDAG=1100110;LEDResult=1;LEDAG=1101101;LEDResult=1;LEDAG=1111101;LEDResult=1;LEDAG=0100111;LEDResult=Z;LEDAG=ZZZZZZZ;LED=K; END CASE; END IF; ELSE -啟動復(fù)位功能,同時復(fù)位指示燈和數(shù)碼管 Result=0; LEDAG=0111111; LEDNew Project Wizard,創(chuàng)建一個新的工程;輸入此工程所在的工作目錄(應(yīng)為每個工程創(chuàng)建一個單獨的目錄)、工程名稱(通常和頂層設(shè)計實體名稱相同)、頂層設(shè)計實體名稱(每個工程只有一個);注意工作目錄不要建在默認(rèn)位置,最好建立在自帶的 U 盤上。所選的芯片為 Cyclone II系列的 EP2C35F672C8;最后點擊點擊 Finish,完成一個新工程的創(chuàng)建。2、建立程序文件1)在創(chuàng)建好設(shè)計工程后,選擇FileNEW菜單2)在New 對話框中選擇Device Design Files 頁下的 VHDL File ,點擊OK 按鈕,打開程序編輯器對話框,然后在輸入自己編寫的VHDL程序。3)程序輸入完成后,進(jìn)行保存,然后再選擇菜單項 ProcessingStart Compilation,或者通過點擊圖標(biāo)進(jìn)行編譯。3、管腳分配有以下兩種方法進(jìn)行管腳分配:1)點擊Assignments 菜單下面的Assignment Editor,進(jìn)入到引腳分配窗口;然后將需要分配管腳的信號放置在 To 下方,雙擊To 下方的New,選擇Node Finder,在Filter 窗口中選擇Pins:all,在Named 窗口中輸入“*”,點擊List 在Nodes Found 窗口出現(xiàn)所有信號的名稱,點擊中間的按鈕,則Selected Nodes 窗口下方出現(xiàn)被選擇的端口名稱,然后再雙擊OK 按鈕,完成設(shè)置。2)點擊Assignments 菜單下面的Pin Planner也能進(jìn)行管腳分配。3)本次設(shè)計所用到的管腳分配表如下:當(dāng)管腳分配完之后一定要進(jìn)行再進(jìn)行一次全編譯,以使分配的管腳有效。4、對設(shè)計文件進(jìn)行仿真1)創(chuàng)建一個仿真波形文件,選擇QUARTUSII 軟件FileNew,選取對話框中的Other File 標(biāo)簽頁,從中選取Vector Waveform File,點擊OK 按鈕。2)設(shè)置仿真結(jié)束時間,選擇QUARTUS II 軟件的EditEnd Time命令,彈出線路束時間對話框,在Time 框中輸入仿真結(jié)束時間,點擊OK 按鈕。3)加入輸入、輸出端口,在波形編輯器窗口左邊的端口名列表區(qū)點擊鼠標(biāo)右鍵,在彈出的右鍵菜單中選擇Insert Node or Bus命令,在彈出的Insert Node or Bus 對話框中點擊Node Finder按鈕。在出現(xiàn)的 Node Finder 界面中,在Filter 列表中選擇Pins:all,在Named 窗口中輸入“*”,點擊List 在Nodes Found 窗口出現(xiàn)所有信號的名稱,點擊中間的按鈕則在Selected Nodes 窗口下方出現(xiàn)被選擇的端口名稱,雙擊OK 按鈕,完成設(shè)置。4)編輯輸入端口波形,即指定輸入端口的邏輯電平變化,根據(jù)仿真的需要輸入波形,最后選擇軟件的FileSave進(jìn)行保存。5)指定仿真器設(shè)置,在仿真過程中有時序仿真和功能仿真之分,測試過程中選擇的是功能仿真,在 QUARTUS II 軟件中選擇 ToolSimulator Tool 命令,打開仿真器工具窗口,首先產(chǎn)生功能仿真網(wǎng)表文件,點擊產(chǎn)生功能仿真網(wǎng)表的按鈕 Generate Functional Simulation Netlist,產(chǎn)生功能仿真網(wǎng)表,然后點擊開始仿真的 START 按鈕開始進(jìn)行仿真,直到仿真進(jìn)度條為100%時完成仿真。6)本次仿真的波形如下圖所示:從波形圖可以看出:當(dāng)撥動開關(guān)的輸入序列為“0100101”時,即同意的投票人數(shù)小于4時,用于顯示個人投票結(jié)果的LED(6)LED(0)顯示序列也為“0100101”,這樣就實現(xiàn)了記名投票的功能;此時七段數(shù)碼管的LEDAG(6)LEDAG(0)顯示為“1001111”,由于同意的投票人數(shù)只有3個,沒有超過4個人,所以最終的投票結(jié)果是不同意,即最終投票結(jié)果 Result 顯示為低電平。當(dāng)撥動開關(guān)的輸入序列為“1010111”時,即同意的投票人數(shù)大于4時,用于顯示個人投票結(jié)果的LED(6)LED(0)顯示序列也為“1010111”,同樣也實現(xiàn)了記名投票的功能;此時七段數(shù)碼管的LEDAG(6)LEDAG(0)顯示為“1101101”,由于同意的投票人數(shù)有5個,已經(jīng)超過4個人,所以最終的投票結(jié)果是同意,即圖示最終投票結(jié)果 Result 顯示為高電平。5、從設(shè)計文件到目標(biāo)器件的加載完成對器件的加載有兩種形式,一種是對目標(biāo)器件進(jìn)行加載文件,一種是對目標(biāo)器件的配置芯片進(jìn)行加載。我們在測試過程中采用的是對目標(biāo)器件 EP2C35F672C8 進(jìn)行加載的方法。1)使用下載電纜線將 PC 機(jī)與實驗系統(tǒng)連接起來。2)選擇 QUARTUS II 軟件的 ToolProgrammer 命令,進(jìn)入編程器窗口,如果沒有設(shè)置編程硬件,則編程硬件類型為 No Hardware,所以需要對編程硬件進(jìn)行設(shè)置,點擊 Hardware Setup編程硬件設(shè)置按鈕。3)點擊 Add Hardware 按鈕,出現(xiàn) Add Hardware 對話框,在 Add Hardware 對話框中,測試過程中選擇的是 USB-BlasterUSB-0,配置模式選擇 JTAG,然后添加與工程對應(yīng)的.sof 文件,在 Program/Configure 一欄打勾。點擊 Start 開始配置。七、硬件測試結(jié)果根據(jù)上述準(zhǔn)備,我們組所做的七人表決器的硬件測試結(jié)果已用照片的形式記錄,如下面各圖所示:1) K8為復(fù)位開關(guān),當(dāng)不需要復(fù)位時必須向上撥;當(dāng)只有一個人同意時,如下圖所示,當(dāng)K1向上撥時,對應(yīng)的 D2 點亮,并且七段數(shù)碼管的顯示為“1”,由于同意的人數(shù)小于4個,所以 D1不亮。2) 當(dāng)K1、K2向上撥時,對應(yīng)的 D2、D3 點亮,并且七段數(shù)碼管的顯示為“2”。由于同意的人數(shù)小于4個,所以 D1不亮。3) 當(dāng)K1、K3、K5向上撥時,對應(yīng)的 D2、D4、D5 點亮,并且七段數(shù)碼管的顯示為“3”。這表明了撥動開關(guān)和LED是一一對應(yīng)的,也就是前面提到的記名投票功能。由于同意的人數(shù)小于4個,所以 D1不亮。4)當(dāng)K1、K2、K3、K4向上撥時,對應(yīng)的 D2、D3、D4、D5 點亮,并且七段數(shù)碼管的顯示為“4”,由于同意的人數(shù)大于3個,所以表決結(jié)果 D1 也會點亮。5)當(dāng)K1、K3、K5、K6、K7向上撥時,對應(yīng)的 D2、D4、D6、D7、D8 點亮,并且七段數(shù)碼管的顯示為“5”,由于同意的人數(shù)大于3個,所以表決結(jié)果 D1 也會點亮。6)當(dāng)K1、K2、K3、K4、K5、K6向上撥時,對應(yīng)的 D2、D3、D4、D5、D6、D7 點亮,并且七段數(shù)碼管的顯示為“6”,由于同意的人數(shù)大于3個,所以表決結(jié)果D1 也會點亮。7)當(dāng)K1、K2、K3、K4、K5、K6、K7向上撥時,對應(yīng)的D2、D3、D4、D5、D6、D7 、D8點亮,并且七段數(shù)碼管的顯示為“7”,由于同意的人數(shù)大于3個,所以表決結(jié)果 D1 也會點亮。8)K8為復(fù)位開關(guān),在上圖的基礎(chǔ)上,即K1K7均向上撥,數(shù)碼管顯示為“7”時,若此時將撥動開關(guān)K8向下?lián)?,則數(shù)碼管顯示為“0”, D2D8由亮變滅,表決最終結(jié)果 D1 也熄滅,即達(dá)到了復(fù)位要求,如下圖所示:八、心得體會通過這次的課程設(shè)計,我從中學(xué)到了很多知識,并且鍛煉了自己的程序設(shè)計能力。從抽到題目開始,然后到圖書館去查找相關(guān)資料,通過各種資料的幫助,再根據(jù)設(shè)計要求設(shè)計框圖,然后編寫VHDL程序,上機(jī)進(jìn)行程序調(diào)試、修改,再進(jìn)行軟件仿真,得到仿真波形,最后下載到硬件上進(jìn)行測試。在這個過程中,我遇到了很多棘手的問題,通過進(jìn)一步查找資料和向指導(dǎo)老師請教之后,這些問題才得到解決,雖然花掉了不少的時間,但我們還是在規(guī)定的時間里完成了任務(wù)。在這個過程中,通過反復(fù)的調(diào)試程序,讓我們對用VHDL語言編寫程序和單片機(jī)等有了更深入的認(rèn)識和熟悉,并且使我們更好的掌握了 QUARTUS II 這個軟件的使用方法。通過不斷的仿真,不斷地嘗試,我們終于成功地得出了正確的結(jié)果。通過此次課程設(shè)計,使我們的綜合實踐能力、動手能力和設(shè)計能力得到了鍛煉和提高,與此同時也讓我們發(fā)現(xiàn)其實要做好一個設(shè)計并不難,關(guān)鍵是看你怎么去對待它和付出多大的努力,并且也讓我更加懂得了怎樣去完成一個課程設(shè)計。在這次的設(shè)計過程中,我發(fā)現(xiàn)了自己的缺點和不足,在以后的學(xué)習(xí)和課程設(shè)計中我會不斷地改正和彌補(bǔ)。最后,我真誠的感謝陳老師和徐老師在這次的課程設(shè)計中給予我們的幫助,正是有了指導(dǎo)老師的教導(dǎo),我們才順利的完成了這次課程設(shè)計。九、參考文獻(xiàn)1 EDA技術(shù)與CPLD/FPGA開發(fā)應(yīng)用簡明教程,李履信、沈建華,清華大學(xué)出版社2EDA技術(shù)與應(yīng)用第二版,譚會生、張昌凡,西安電子科技大學(xué)出版社3可編程器件EDA技術(shù)與實踐,李國洪、沈明山,機(jī)械工業(yè)出版社4基于QUARTUS II 的CPLD/FPGA設(shè)計,電子工業(yè)出版社5EDA技術(shù)與應(yīng)用,朱正偉,清華大學(xué)出版社十、附錄根據(jù)設(shè)計要求,我們組設(shè)計的七人表決器程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY BJQ ISPORT(CLK,CLR:IN STD_LOGIC; -CLK為系統(tǒng)時鐘,CLR為復(fù)位按鍵 K:IN STD_LOGIC_VECTOR
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 深度解析教育科技行業(yè)未來發(fā)展方向
- 教育機(jī)構(gòu)如何利用游戲化平臺提高教學(xué)效果
- 企業(yè)培訓(xùn)中多媒體技術(shù)的應(yīng)用與創(chuàng)新-以智慧教室為例
- 新版培訓(xùn)課件模板圖片
- 碧桂園張家港拓客內(nèi)部培訓(xùn)89
- 全民健身設(shè)施補(bǔ)短板工程實施方案在城市老舊小區(qū)健身設(shè)施改造中的應(yīng)用研究
- 全球鈾礦資源市場前景與2025年核能產(chǎn)業(yè)綠色低碳發(fā)展戰(zhàn)略報告
- 公交優(yōu)先戰(zhàn)略在2025年城市交通擁堵治理中的可持續(xù)發(fā)展報告
- Carpetimycin-B-生命科學(xué)試劑-MCE
- 成都文理學(xué)院《游戲美術(shù)設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷
- 車庫門維修合同范本
- 2025年度事業(yè)單位公開招聘考試《綜合應(yīng)用能力(E類)公共衛(wèi)生管理》試卷真題及解析
- 三市耐多藥肺結(jié)核病患者管理狀況剖析與優(yōu)化策略探究
- 公司貿(mào)易合規(guī)管理制度
- CJ/T 461-2014水處理用高密度聚乙烯懸浮載體填料
- 社區(qū)工作者綜合能力考試基礎(chǔ)知識試題及答案
- T/CBMCA 046-2023潔凈室用裝配式隔墻及吊頂系統(tǒng)技術(shù)要求
- 墊付醫(yī)療費協(xié)議書
- 2024年陜西省普通高中學(xué)業(yè)水平合格性考試語文試題(原卷版+解析版)
- 小學(xué)保潔承包協(xié)議書
- 重慶中考:數(shù)學(xué)高頻考點
評論
0/150
提交評論