资源描述:
《eda设计智力抢答器设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、用EDA设计智力抢答器设计一、用EDA设计智力抢答器设计,设计要求:1设计制作一个可容纳四组参赛者的数字智力抢答器,每组设置一个抢答按钮。2屯路具有第一抢答信号鉴别和锁存功能。3设置记分电路。二.原理分析:将电路分为三个主要模块:抢答鉴别模块QDJB;计时模块JSQ;记分模块JFQ;译码器显示模块YMQ;元件例化QDQ三、代码:方法1用静态显示,使用4个数码管,两个显示计时,一个显示组别,一个显示分数1抢答鉴别模块QDJBLIBRARYIEEE;USEIEEE.STD_L0GIC_1164.ALL;ENTITYQDJBISPORT(CLR:INSTD_LOGIC
2、;A,B,C,D:INSTD_LOGIC;-4个组A1,B1,C1,D1:OUTSTD_LOGIC;STATES:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDENTITYQDJB;ARCHITECTUREARTOFQDJBISsignala_1,b_1,c_1,d_1:stdjogic;BEGINPROCESS(CLR,A,B,C,D)ISBEGINIFCLR=TTHENSTATES<=,,0000,,;a_1<=,0,;b_1<=,0,;c_1<=,0,;d_1<=,0,;-清零elsifa_1=1'orb_1=Vorc_1=1'ord
3、_1='1'thennull;■■锁存当有一组选中吋其他组再抢答没祚用elsifa=*rthena_1<=*1,;states<=,,0001n;elsifb=*1'thenb_1<=*1,;states<=,,0010";elsifc=,1,thenc_1<='1*;states<="0011H;endif;a1<=a_1:b1<=b_1;c1<=c_1;d1<=d_1;ENDPROCESS;ENDARCHITECTUREART;2计时模块JSQLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_U
4、NSIGNED.ALL;ENTITYJSQISPORT(CLR丄DN,EN,CLK:INSTD_LOGIC;TA,TB:INSTD_LOGIC_vector(3downto0);QA:OUTSTD_L0GIC_VECT0R(3DOWNTO0);-geweiQB:OUTSTD_LOGIC_VECTOR(3DOWNTO0));・・shiweiENDENTITYJSQ;ARCHITECTUREARTOFJSQISBEGINPROCESS(CLK)ISVARIABLETMPA:STD_LOGIC_VECTOR(3DOWNTO0);VARIABLETMPB:STD_LOG
5、IC_VECTOR(3DOWNTO0);BEGINIFCLR=TTHENTMPAM0000”;TMPB:=n0110H;“清零,倒计时60秒ELSIFCLKEVENTANDCLK=TTHENIFLDN=TTHENTMPA:=tA;TMPB:=tB;■■置数控制,如果不想要60可以从TA,TB输入倒计时秒数ELSIFEN=TTHEN-计时开始IFTMPA=n0000HTHEN■•遇到9则自动变为0,否则减一TMPA:=M1001H;IFTMPB=”0000”THENTMPB:=H0110H;ELSETMPB:=TMPB-1;ENDIF;ELSETMPA:=TMPA
6、-1;ENDIF;ENDIF;ENDIF;QA<=TMPA;QB<=TMPB;ENDPROCESS;ENDARCHITECTUREART;3记分模块JFQLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYJFQISPORT(RST:INSTD_LOGIC;ADD:INSTD_LOGIC;CHOS:INSTD_LOGIC_VECTOR(3DOWNTO0);out1:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDENTITYJFQ;ARCHIT
7、ECTUREARTOFJFQISBEGINPROCESS(RST,ADD,CHOS)ISVARIABLEVARIABLEVARIABLEVARIABLEPOINTS_AO:POINTS_BO:POINTS_CO:POINTSDO:STD_LOGIC_VECTOR(3STD_LOGIC_VECTOR(3STD_LOGIC_VECTOR(3STD_LOGIC_VECTOR(3DOWNTO0);DOWNTO0);DOWNTO0);DOWNTO0);BEGINIF(ADD'EVENTANDADD=T)THENIFRST=TTHENPOINTS_A0:=H0000H;PO
8、INTS_BO:=HOO