七路搶答器EDA設(shè)計(jì)報(bào)告_第1頁
七路搶答器EDA設(shè)計(jì)報(bào)告_第2頁
七路搶答器EDA設(shè)計(jì)報(bào)告_第3頁
七路搶答器EDA設(shè)計(jì)報(bào)告_第4頁
七路搶答器EDA設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計(jì)報(bào)告課題名稱:基于VHDL的六路搶答器成績:指導(dǎo)教師:系(院) 名:電控系班級:電子 班學(xué)號:200700303學(xué)生姓名:最后之舞1) 設(shè)計(jì)任務(wù):1. 搶答器同時(shí)供七名選手或七個(gè)代表隊(duì)比賽,分別用七個(gè)按鈕Ren(0) Ren(6)表示。2. 設(shè)置一個(gè)系統(tǒng)清除即搶答控制開關(guān)CLR,該開關(guān)由主持人控制。3. 搶答器具有鎖存與顯示功能。即只要有選手按動按鈕,鎖存相應(yīng)的編號,并在LED數(shù)碼管上顯示,同時(shí)相應(yīng)編號的LCD燈,即LD(0)LD(6)點(diǎn)亮提示,并且全局警報(bào)燈LCD也點(diǎn)亮。選手搶答實(shí)行優(yōu)先鎖存,優(yōu)先搶答選手的編號一直保持到主持人將系統(tǒng)清除為止。4. 搶答器具有定時(shí)搶答功能。當(dāng)主持人啟動

2、“開始”(LCR)鍵后,定時(shí)器進(jìn)行減計(jì)時(shí),同時(shí)數(shù)碼管顯示時(shí)間變動情況。5. 如果定時(shí)時(shí)間已到,無人搶答,本次搶答無效,系統(tǒng)報(bào)警燈LCD亮并禁止搶答,定時(shí)顯示器上顯示00。主持人再次按下“開始”(CLR)鍵后即可進(jìn)行下一輪的搶答。2) 工作原理:1. 原理框圖:2. 各部分工作原理:搶答器計(jì)時(shí)模塊:這個(gè)模塊的輸入端有時(shí)鐘信號MIAO、系統(tǒng)復(fù)位信號CLR和一個(gè)H輸入信號;輸出端有秒時(shí)間狀態(tài)顯示信號SEC和無人搶答和計(jì)時(shí)中止警報(bào)信號LCD。這個(gè)模塊中主要實(shí)現(xiàn)搶答過程中的計(jì)時(shí)功能,在搶答開始后進(jìn)行15秒的倒計(jì)時(shí),并且在15秒倒計(jì)時(shí)后無人搶答的情況下顯示超時(shí)并輸出信號至LCD報(bào)警,或者只要15秒內(nèi)有人搶

3、答,時(shí)間也即刻停止計(jì)時(shí),系統(tǒng)輸出一個(gè)信號經(jīng)LCD傳至“搶答系統(tǒng)”,并顯示優(yōu)先搶答者的搶答時(shí)刻。 搶答控制系統(tǒng)模塊:在這個(gè)模塊輸入端有LCD輸入(以時(shí)間控制系統(tǒng)的LCD輸出信號為信號源)、一個(gè)和“時(shí)間控制系統(tǒng)”公用的CLR端、七人搶答輸入信號端Ren和有一個(gè)時(shí)鐘信號端CLK,這個(gè)時(shí)鐘信號是個(gè)高頻信號,用以掃描Ren是否有信號輸入。輸出端有對應(yīng)于Ren編號的7個(gè)指示燈LD 和4線2進(jìn)制輸出端Who (用于以數(shù)字的形式顯示優(yōu)先搶答者的編號),還有一個(gè)H 端用于指示Ren按鈕狀態(tài)。在此模塊中高頻時(shí)鐘信號一直作用,此時(shí),若主持人按下CLR即為開始搶答信號,所有輸出端都自動清零。在有效時(shí)間范圍(15秒)內(nèi)

4、只要有人搶答,H就有高電平輸出至“時(shí)間控制系統(tǒng)”的H端以控制倒計(jì)時(shí)的停止,并且對應(yīng)的LD指示燈點(diǎn)亮,數(shù)碼管Who顯示優(yōu)先搶答者編號,并鎖定輸入端Ren以阻止系統(tǒng)響應(yīng)其他搶答者的信號。若有兩個(gè)(或兩個(gè)以上的人)同時(shí)刻按下Ren按鈕(概率非常?。到y(tǒng)也即刻鎖定Ren按鈕,對應(yīng)的兩個(gè)(或兩個(gè)以上)的LD燈點(diǎn)亮(這就是用多個(gè)燈管代替單個(gè)鈴音作為報(bào)警的優(yōu)勢),但是數(shù)碼管Who顯示“00”,H有信號輸出至“時(shí)間控制系統(tǒng)”致使其停止倒計(jì)時(shí)。3) 軟件設(shè)計(jì):完整程序如下: 搶答控制部分:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY QIANGDA ISPO

5、RT(Ren: IN STD_LOGIC_VECTOR(6 downto 0);-七人搶答信號定義LCD,CLR,CLK: IN STD_LOGIC;-使能端、主持人復(fù)位(開始)和時(shí)鐘信號定義H:OUT STD_LOGIC;Who: OUT STD_LOGIC_VECTOR(3 downto 0);-顯示輸出信號定義LD: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);-編號燈信號定義 END QIANGDA;ARCHITECTURE st OF QIANGDA ISSIGNAL G:STD_LOGIC_VECTOR(6 downto 0);-變量信號定義BEGINPROC

6、ESS (Ren,CLK,CLR,LCD)BEGIN IF CLR='1' THEN G<="0000000"LD<="0000000"H<='0' -判斷復(fù)位是否按下 ELSIF (CLK'EVENT AND CLK='1')THEN -判斷時(shí)鐘上升沿 IF LCD='0' THEN -未到15秒仍可搶答IF(Ren(0)='1')AND NOT(G(1)='1' OR G(2)='1'-判斷此號回答者是否最先搶答

7、OR G(3)='1' OR G(4)='1' OR G(5)='1' OR G(6)='1')THEN G(0)<='1'LD(0)<='1'END IF;-若為肯定,對應(yīng)編號燈亮,回答權(quán)給此人IF(Ren(1)='1')AND NOT(G(2)='1' OR G(3)='1' -判斷此號回答者是否最先搶答 OR G(4)='1' OR G(5)='1' OR G(6)='1' OR G(0

8、)='1')THEN G(1)<='1'LD(1)<='1' END IF;-若為肯定,對應(yīng)編號燈亮,回答權(quán)給此人IF(Ren(2)='1')AND NOT(G(1)='1' OR G(3)='1'-判斷此號回答者是否最先搶答 OR G(4)='1' OR G(5)='1' OR G(6)='1' OR G(0)='1')THEN G(2)<='1'LD(2)<='1'END IF

9、;-若為肯定,對應(yīng)編號燈亮,回答權(quán)給此人IF(Ren(3)='1')AND NOT(G(1)='1' OR G(2)='1'-判斷此號回答者是否最先搶答 OR G(4)='1' OR G(5)='1' OR G(6)='1' OR G(0)='1')THEN G(3)<='1'LD(3)<='1'END IF; -若為肯定,對應(yīng)編號燈亮,回答權(quán)給此人IF(Ren(4)='1')AND NOT(G(1)='1'

10、 OR G(2)='1'-判斷此號回答者是否最先搶答 OR G(3)='1' OR G(5)='1' OR G(6)='1' OR G(0)='1')THEN G(4)<='1'LD(4)<='1'END IF; -若為肯定,對應(yīng)編號燈亮,回答權(quán)給此人IF(Ren(5)='1')AND NOT(G(1)='1' OR G(2)='1'-判斷此號回答者是否最先搶答 OR G(3)='1' OR G(4)=

11、9;1' OR G(6)='1' OR G(0)='1')THEN G(5)<='1'LD(5)<='1'END IF; -若為肯定,對應(yīng)編號燈亮,回答權(quán)給此人IF(Ren(6)='1')AND NOT(G(1)='1' OR G(2)='1'-判斷此號回答者是否最先搶答 OR G(3)='1' OR G(4)='1' OR G(5)='1' OR G(0)='1')THEN G(6)<=

12、9;1'LD(6)<='1'END IF; -若為肯定,對應(yīng)編號燈亮,回答權(quán)給此人H<= G(0) OR G(1) OR G(2) OR G(3) OR G(4) OR G(5) OR G(6);END IF; END IF;CASE G ISWHEN "0000001" => Who<="0001"-顯示優(yōu)先搶答者號碼WHEN "0000010" => Who<="0010"WHEN "0000100" => Who<=&

13、quot;0011"WHEN "0001000" => Who<="0100"WHEN "0010000" => Who<="0101"WHEN "0100000" => Who<="0110"WHEN "1000000" => Who<="0111"WHEN OTHERS =>Who<="0000"END CASE;END PROCESS;END

14、 st;倒計(jì)時(shí)控制部分:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY SHIJIAN ISPORT(CLR,MIAO,H: IN STD_LOGIC; -主持人復(fù)位(開始)信號、秒時(shí)鐘信號定義SEC:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);LCD: OUT STD_LOGIC); -全局報(bào)警信號定義 END SHIJIAN;ARCHITECTURE st OF SHIJIAN ISSIGNAL CNT:STD_LOGIC_VECTOR(3 DOWNTO

15、0);-內(nèi)部變量信號定義BEGIN PROCESS (MIAO,CLR,H) BEGIN IF(CNT>0 AND H='0') THEN CNT<=CNT-1; -倒計(jì)時(shí) ELSIF(MIAO'EVENT AND MIAO='1') THEN -判斷秒時(shí)鐘信號上升沿 ELSE LCD<='1'-15秒后停止搶答,到時(shí)信號燈亮 END IF; END IF; CASE CNT IS - 顯示倒計(jì)時(shí)時(shí)間狀態(tài) WHEN "1111" =>SEC<="00010101"-15

16、s WHEN "1110" =>SEC<="00010100"-14s WHEN "1101" =>SEC<="00010011"-13s WHEN "1100" =>SEC<="00010010"-12s WHEN "1011" =>SEC<="00010001"-11s WHEN "1010" =>SEC<="00010000"-10

17、s WHEN "1001" =>SEC<="00001001"-9s WHEN "1000" =>SEC<="00001000"-8s WHEN "0111" =>SEC<="00000111"-7s WHEN "0110" =>SEC<="00000110"-6s WHEN "0101" =>SEC<="00000101"-5s WHE

18、N "0100" =>SEC<="00000100"-4s WHEN "0011" =>SEC<="00000011"-3s WHEN "0010" =>SEC<="00000010"-2s WHEN "0001" =>SEC<="00000001"-1s WHEN OTHERS => SEC<="00000000"-0END CASE;END PROCESS;END st; 上圖為硬件測試管腳鎖定圖 4) 仿真結(jié)果分析: 右圖體現(xiàn)出了倒計(jì)時(shí)15秒后報(bào)警燈LCD點(diǎn)亮,并停止搶答(即搶答

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論