VHDL四人搶答器_第1頁
VHDL四人搶答器_第2頁
VHDL四人搶答器_第3頁
VHDL四人搶答器_第4頁
VHDL四人搶答器_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、四人搶答器設計 一、設計任務及要求:(1)設計用于競賽搶答的四人搶答器;有多路搶答,搶答臺數(shù)為8;具有搶答開始后20秒倒計時,20秒倒計時后無人搶答顯示超時,并報警;能顯示超前搶答臺號并顯示犯規(guī)警報;(2) 系統(tǒng)復位后進入搶答狀態(tài),當有一路搶答按鍵按下,該路搶答信號將其余各路搶答信號封鎖,同時鈴聲想起,直至該路按鍵松開,顯示牌顯示該路搶答臺號;(3) 用VHDL語言設計符合上述功能要求的四人搶答器,并用層次化設計方法設計該電路; (4) 完成電路全部設計后,通過系統(tǒng)實驗箱下載驗證設計課題的正確性。二、設計思路設計制作一個競賽搶答器,每組受控于一個搶答開關,分別為S1, S2, S3, S4,低

2、電平表示搶答有效;設置主持人控制鍵K,用于控制整個系統(tǒng)清0 和搶答有效控制,按下復位鍵時, K=0,系統(tǒng)清零;抬起復位鍵時,K=1,搶答開始;系統(tǒng)具有第一搶答信號鑒別和鎖存功能。在主持人將系統(tǒng)復位并使搶答有效開始后,第一搶答者按下?lián)尨鸢粹o,對應的輸入引腳接低電位0,電路應記憶下第一搶答者的組別,并封鎖其他各組的按鈕,即其他任何一組按鍵都不會使電路響應;系統(tǒng)以兩種方式指示第一搶答者:其一是通過譯碼程序顯示其組別號;其二是在第一搶答者產(chǎn)生時,蜂鳴器警示;設置違規(guī)電路單元,當搶答者在主持人按下復位清零按鈕之前就已經(jīng)按下?lián)尨鸢粹o時,則給出違規(guī)信號為高電平。對應組別的紅色信號燈亮;當20秒倒計時后無人搶

3、答顯示超時,并報警。系統(tǒng)設計框圖如圖1所示。 圖1 整體設計框圖三、VHDL程序?qū)崿F(xiàn)1、正常搶答程序及仿真此模塊包括正常搶答第一信號鑒別和顯示搶答臺號,并發(fā)生聲音提示。其中S1,S2,S3,S4為搶答按鈕,當對應的按鈕信號為0時表示有搶答信號;K為主持人按鈕,按下復位鍵K時, K=0,系統(tǒng)清零;抬起復位鍵時,K=1,搶答開始;G為報警信號。其VHDL源程序如下: library ieee;use ieee.std_logic_1164.all;use ieee. std_logic_arith.all;use ieee. std_logic_unsigned.all;-entity qiang

4、da is port( S1,S2,S3,S4 : in std_logic; -輸入:表示4個人,為0表示有搶答 K : in std_logic; -主持人搶答開始鍵 G : out std_logic; -報警信號 ledag : out std_logic_vector (6 downto 0); Dout : out std_logic_vector(3 downto 0) ); -搶答結果顯示 end qiangda;-architecture behave of qiangda is signal Enable_Flag : std_logic;-允許搶答控制變量,為1表示允許搶

5、答 signal S : std_logic_vector(3 downto 0); signal D : std_logic_vector(3 downto 0); begin process(S1,S2,S3,S4,K) -允許搶答控制 begin S<=S1&S2&S3&S4; If (K='1') then Enable_Flag<='1' elsif(S/="1111") then Enable_Flag<='0' end if; end process; process(S

6、1,S2,S3,S4,K) -搶答結果顯示 begin if(K='0') then D<="0000" Elsif (Enable_Flag='1') then if(S1='0') then D(0)<='1' G<='0' elsif(S2='0') then D(1)<='1' G<='0' elsif(S3='0') then D(2)<='1' G<='0

7、' elsif(S4='0') then D(3)<='1' G<='0' end if; dout<=d; end if; end process; process(d) -顯示搶答成功者號碼 begin case d is when "0000"=>ledag<="0111111" when "0001"=>ledag<="0000110" when "0010"=>ledag<=&

8、quot;1011011" when "0100"=>ledag<="1001111" when "1000"=>ledag<="1100110" when others=>ledag<="0000000" end case; end process; end behave;以上VHDL程序的系統(tǒng)框圖如圖2所示。圖2 搶答部分框圖通過MAX+PLUS軟件仿真結果如圖3所示。從圖中可看出S1和S2選手搶答情況,在K為高電平時,S1選手為低電平,搶答成功

9、,報警信號G為低電平,給出報警信號,同時七段數(shù)碼管譯碼為06H,顯示1。 圖3 搶答部分仿真圖2、搶答倒計時程序此模塊為搶答20s倒計時程序,在主持人按下按鈕K后此模塊即開始工作,在20s倒計時完后會有聲音提示,G為聲音報警信號。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNT ISPORT (CLK, Enable_Flag: IN STD_LOGIC; H,L: OUT STD_LOGIC_VECTOR (3 DOWNTO 0); G:OUT STD_LOGIC); -

10、聲音報警END COUNT;ARCHITECTURE COUNT_ARC OF COUNT ISBEGINPROCESS (CLK, Enable_Flag)VARIABLE HH, LL: STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINIF CLK'EVENT AND CLK='1'THENIF Enable_Flag='1'THENIF LL=0 AND HH=0 THEN G<='1'ELSIF LL=0 THEN LL: ="1001" HH: =HH-1; ELSE LL: =L

11、L-1;END IF;ELSE G<='0' HH: ="1001" LL: ="1001"END IF;END IF;H<=HH;L<=LL;END PROCESS;END COUNT_ARC;其模塊結構圖如圖4所示: 圖4 倒計時結構圖3、超前犯規(guī)搶答程序及仿真此模塊為違規(guī)電路。當搶答者在主持人復位系統(tǒng)之前就已按下?lián)尨鸢粹o,即當RESET=0時,有搶答信號出現(xiàn),則Y=11表示某組違規(guī),當RESET = 1時,顯示違規(guī)組別。其中K為主持人按鈕,S1,S2,S3,S4為搶答按鈕,R1,R2,R3,R4為對應組別犯規(guī)紅色顯

12、示燈。其VHDL源程序如下: LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY wg ISPORT(K: IN std_logic;S1, S2, S3, S4: IN std_logic;R1, R2, R3, R4: OUT std_logic; -紅色燈指示超前搶答臺號y: OUT std_logic_VECTOR (1 DOWNTO 0) );END wg;ARCHITECTURE a OF wg ISSIGNAL TEMP1: STD_LOGIC;SIGNAL TEMP2:

13、STD_LOGIC_VECTOR (1 DOWNTO 0);BEGINTEMP1<=S1 OR S2 OR S3 OR S4 ;TEMP2<=K&TEMP1;process(TEMP2) -顯示搶答成功者號碼 begin case TEMP2 is when "01"=>Y<="11" when "10"=>Y<="00" when "11"=>Y<="00" when others=>Y<="00

14、" end case;if(K<='0') thenif(S1='0') then R1<='0' elsif(S2='0') then R2<='0' elsif(S3='0') then R3<='0' elsif(S4='0') then R4<='0' end if; end if; end process; END a;通過VHDL程序可生成其對應的框圖如圖5所示:圖5犯規(guī)部分框圖同樣在MAX+PLUS環(huán)境下可得到其對應的仿真分析圖如圖6所示。從仿真分析可看出在為高電平前,S1按鈕有超前搶答低電平出現(xiàn),故Y=11表示有超前搶答產(chǎn)生,同時R1為低電平,對應S1選手的紅燈亮,指示其違規(guī)搶答。 圖6 犯規(guī)模塊仿真圖四、總結由以上描述

溫馨提示

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

評論

0/150

提交評論