ImageVerifierCode 换一换
格式:DOC , 页数:19 ,大小:94.50KB ,
资源ID:2678679      下载积分:8 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2678679.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(设计二数字抢答器设计.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

设计二数字抢答器设计.doc

1、 2 数字抢答器地设计 2.1 二人数字抢答器地设计 一.设计任务:设计一个2人抢答器,采用EPM7128芯片,具体要求如下: (1) 两人抢答,先抢为有效,用发光二极管显示是否抢到优先答题权. (2) 每人2位计分显示,答错不加分,答对加10分.20分.30分. (3) 每题结束后,裁判按复位,可重新抢答下一题. (4) 累计加分可由裁判随时清除. 二.设计框图: 抢答者1 抢答者2 抢答判断 显示抢答指示灯 裁判复位 重新抢答 裁判加分 裁判清零 加分电路 显示加分结果 源程序: library ieee

2、 use ieee.std_logic_1164.all; use ieee.std_logic_signed.all; entity qd is port(i1,i2:in bit; reset:in bit; g10,g20,g30:in bit; clk:in bit; cong:in bit light1, light2:out bit= ’0 ’; t11:out std_logic_vector(6 downto 0):=”0111111”; t12:o

3、ut std_logic_vector(6 downto 0):=”0111111”; t21:out std_logic_vector(6 downto 0):=”0111111”; t22:out std_logic_vector(6 downto 0):=”0111111”); end qd; architecture stru of qd is signal cs1:integer range 0 to 9; signal cs2:integer range 0 to 9; signal a,b:bit:= ’0’; signal 11,12:bit:=

4、 ’0’; begin process(clk) begin if clk’event and clk = ’1 ’then if (cong = ’1 ’) then if (reset = ’1 ’) then if (i1 = ’0 ’and a = ’0 ’) then 11 <=’1 ’; elsif(i2 = ’0 ’and a = ’0 ’) then 12 <=’1 ’;a <=’1 ’;矚慫润厲钐瘗睞枥庑赖。 end if; if (g10=’0’and 11= ’1 ’and b= ’0 ’)t

5、hen cs1<=cs1+1;b<=’1 ’;聞創沟燴鐺險爱氇谴净。 elsif(g20=’0’and 11= ’1 ’and b= ’0 ’)then cs1<=cs1+2;b<=’1 ’;残骛楼諍锩瀨濟溆塹籟。 elsif(g30=’0’and 11= ’1 ’and b= ’0 ’)then cs1<=cs1+3;b<=’1 ’;酽锕极額閉镇桧猪訣锥。 end if; if (g10=’0’and 12= ’1 ’and b= ’0 ’)then cs2<=cs2+1;b<=’1 ’;彈贸摄尔霁毙攬砖卤庑。 elsif(g20=’0’and 12= ’1 ’

6、and b= ’0 ’)then cs2<=cs2+2;b<=’1 ’;謀荞抟箧飆鐸怼类蒋薔。 elsif(g30=’0’and 12= ’1 ’and b= ’0 ’)then cs2<=cs2+3;b<=’1 ’;厦礴恳蹒骈時盡继價骚。 end if; if (cs1 = 0) then t11<=”01111111”; elsif (cs1 = 1) then t11<=”0000110”; elsif (cs1 = 2) then t11<=”1011011”; elsif (cs1 = 3) then t11<=”1001111”; elsif (cs1 = 4)

7、then t11<=”1100110”; elsif (cs1 = 5) then t11<=”11011101”; elsif (cs1 = 6) then t11<=”1111101”; elsif (cs1 = 7) then t11<=”0000111”; elsif (cs1 = 8) then t11<=”1111111”; elsif (cs1 = 9) then t11<=”1101111”; end if; if (cs2 = 0) then t21<=”01111111”; elsif (cs2 = 1) then t21<=”0000110”; elsi

8、f (cs2 = 2) then t21<=”1011011”; elsif (cs2 = 3) then t21<=”1001111”; elsif (cs2 = 4) then t21<=”1100110”; elsif (cs2 = 5) then t21<=”11011101”; elsif (cs2 = 6) then t21<=”1111101”; elsif (cs2 = 7) then t21<=”0000111”; elsif (cs2 = 8) then t21<=”1111111”; elsif (cs2 = 9) then t21<=”1101111”;

9、 end if; else 11<=’0’;12<=’0’;a<=’0’;b<=’0’; end if; else cs1<=’0’; cs2<=’0’; 11<=’0’;12<=’0’; end if; light1<=11; light2<=12; t12<=”01111111”; t22<=”01111111”; end if; end process; end stru; 说明:当一人抢到优先权,发光二极管亮,另一人再按按键无效;答题结束后,裁判按复位键,方可再次抢答;每人有2个数码管显示累加计分情况,分数分为3档,用按键区别.茕桢广鳓鯡选块网羈泪。

10、 2.2 四人数字抢答器地设计 在许多比赛活动中,为了准确.公正.直观地判断出第一抢答者,通常设置一台抢答器,通过抢答器地指示灯显示.数码显示和警示蜂鸣等手段指示出第一抢答者.同时,还可以设置计分.犯规及奖惩计录等多种功能.鹅娅尽損鹌惨歷茏鴛賴。 设计要求: (1)设计制作一个可容纳四组参赛者地数字智力抢答器,每组设置一个抢答按钮供抢答者使用. (2)电路具有第一抢答信号地鉴别和锁存功能. (3)设置计分电路. (4)设置犯规电路. 设计方案 根据系统设计要求可知,系统地输入信号有:各组地抢答按钮A.B.C.D,系统清零信号CLR,系统时钟信号C

11、LK,计分复位端RST,加分按钮端ADD,计时预置控制端LDN,计时使能端EN,计时预置数据调整按钮TA.TB;系统地输出信号有:四个组抢答成功与否地指示灯控制信号输出口LEDA.LEDB.LEDC.LEDD,四个组抢答时地计时数码显示控制信号若干,抢答成功组别显示地控制信号若干,各组计分动态显示地控制信号若干.籟丛妈羥为贍偾蛏练淨。 根据以上地分析,可将整个系统分为三个主要模块:抢答鉴别模块QDJB;抢答计时模块JSQ;抢答计分模块JFQ.对于需显示地信息,需增加或外接译码器,进行显示译码.考虑到FPGA/CPLD地可用接口及一般EDA实验开发系统提供地输出显示资源地限制,这里我们将组别显

12、示和计时显示地译码器内设,而将各组地计分显示地译码器外接.預頌圣鉉儐歲龈讶骅籴。 抢答鉴别电路地设计与实现 抢答鉴别模块用来判断A.B.C.D四组抢答者谁最先按下按钮.并为显示端送出信号,使观众能够清楚地知道是哪一组抢答成功,是整个系统地核心部分.同时为下一模块输入信号,以方便裁判为该组加分.渗釤呛俨匀谔鱉调硯錦。 模块如图1所示,系统地输入信号有:各组地抢答按钮A.B.C.D,系统清零信号CLR.系统地输出信号有: 各组地抢答按钮显示端A1.B1.C1.D1,组别显示端STATES[3..0],同时作为下一模块JFQ模块地输入信号.铙誅卧泻噦圣骋贶頂廡。 图1 VHDL实现方法如下

13、所示: ARCHITECTURE ART OF QDJB IS CONSTANT W1: STD_LOGIC_VECTOR:="0001"; CONSTANT W2: STD_LOGIC_VECTOR:="0010"; CONSTANT W3: STD_LOGIC_VECTOR:="0100"; CONSTANT W4: STD_LOGIC_VECTOR:="1000"; BEGIN PROCESS(CLR,A,B,C,D) IS BEGIN IF CLR='1' THEN STATES<="0000"; ELSIF (

14、A='1'AND B='0'AND C='0'AND D='0') THEN A1<='1'; B1<='0'; C1<='0'; D1<='0'; STATES<=W1; ELSIF (A='0'AND B='1'AND C='0'AND D='0') THEN A1<='0'; B1<='1'; C1<='0'; D1<='0'; STATES<=W2; ELSIF (A='0'AND B='0'AND C='1'AND D='0') THEN A1<='0'; B1<='0'; C1

15、<='1'; D1<='0'; STATES<=W3; ELSIF (A='0'AND B='0'AND C='0'AND D='1') THEN A1<='0'; B1<='0'; C1<='0'; D1<='1'; STATES<=W4; END IF; END PROCESS; 在抢答鉴别电路地设计中,A.B.C.D四组抢答,理论上应该有16种可能情况,但实际上由于芯片地反应速度快到一定程度时,两组以上同时抢答成功地可能性非常小,因此可设计成只有四种情况,即ABCD分别为1000.0100.0010.0001,这大大简化了电路地设计复杂

16、性.擁締凤袜备訊顎轮烂蔷。 计分器地设计与实现 在计分器电路地设计中,按照一般地设计原则,按一定数进制进行加减即可. 模块如图2所示,系统地输入信号有:计分复位端RST,加分按钮端ADD,减分按钮端SUB,组别号输入端CHOS[3..0].系统地输出信号有:A组分数输出端AA2[3..0].AA1[3..0].AA0[3..0],B组分数输出端BB2[3..0].BB1[3..0].BB0[3..0],C组分数输出端CC2[3..0].CC1[3..0].CC0[3..0],D组分数输出端DD2[3..0].DD1[3..0].DD0[3..0].贓熱俣阃歲匱阊邺镓騷。 图2

17、 VHDL实现方法如下所示: (1)当按下RST键时,使分数复位,每位地初始分数为100分. IF RST='1' THEN POINTS_A2:="0001"; POINTS_A1:="0000"; POINTS_B2:="0001"; POINTS_B1:="0000"; POINTS_C2:="0001"; POINTS_C1:="0000"; POINTS_D2:="0001"; POINTS_D1:="0000"; (2)当按下加分按钮端ADD时,以给A组加分为例. IF POINTS_A1="1001" THEN

18、 POINTS_A1:="0000"; IF POINTS_A2="1001" THEN POINTS_A2:="0000"; ELSE POINTS_A2:=POINTS_A2+ "0001"; END IF; ELSE POINTS_A1:=POINTS_A1+ "0001"; END IF; (3)当按下减分按钮端SUB时,以给A组减分为例. IF POINTS_A1="0000" THEN POINTS_A1:="1001"; IF POINTS_A2="0000"

19、 THEN POINTS_A2:="1001"; ELSE POINTS_A2:=POINTS_A2+ "1111"; END IF; ELSE POINTS_A1:=POINTS_A1+ "1111"; END IF; 在设计中减法地实现是以加法运算来实现地.以A为例,由于每次减分都是减去10分,即每次为POINTS_A1减一,所以可以用POINTS_A1+ "1111"来实现.如:0111-0001=0110,用加法实现:0111+1111=10110.由于POINTS_A1: STD_LOGIC_VECT

20、OR(3 DOWNTO 0),所以POINTS_A1=0110.坛摶乡囂忏蒌鍥铃氈淚。 计时器地设计与实现 本系统中地计时器电路既有计时初始值地预置功能,又有倒计数功能,功能比较齐全. 模块如图3所示,系统输入信号有:系统清零信号CLR,计时预置控制端LDN,计时使能端EN,系统时钟信号CLK,计时预置数据调整按钮TA.TB.系统输出信号有:倒计时输出端QA[3..0].QB[3..0].蜡變黲癟報伥铉锚鈰赘。 图3 VHDL实现方法如下所示: (1)计时初始值功能地实现. PROCESS(TA,TB,CLR) BEGIN IF CLR='1' THEN

21、 DA<="0000"; DB<="0000"; ELSE IF TA='1' THEN DA<=DA+'1' ; END IF; IF TB='1' THEN DB<=DB+'1'; END IF; END IF; END PROCESS; (2)60秒倒计时功能地实现. PROCESS(CLK) VARIABLE TMPA: STD_LOGIC_VECTOR(3 DOWNTO 0); VARIABLE TMPB: STD_LOGIC_VECTOR(3 DOWNTO 0);

22、 BEGIN IF CLR='1' THEN TMPA:="0000"; TMPB:="0110"; ELSIF CLK'EVENT AND CLK='1' THEN IF LDN='1' THEN TMPA:=DA; TMPB:=DB; ELSIF EN='1' THEN IF TMPA="0000" THEN TMPA:="1001"; IF TMPB="0000" THEN TMPB:="0110"; ELSE

23、 TMPB:=TMPB-1; END IF; ELSE TMPA:=TMPA-1; END IF; END IF; END IF; QA<=TMPA; QB<=TMPB; END PROCESS; 译码器地设计与实现 该模块实际上是一个译码器,主要是用来完成四位二进制BCD编码转换成七段二进制数字,以阿拉伯数字地形式输出在数码管上,使观众能够更直观地看到结果.译码器地译码对照表如下所示:買鲷鴯譖昙膚遙闫撷凄。 显示地数字/字母 BCD编码 七段数码管2

24、进制 0 0000 0111111 1 0001 0000110 2 0010 1011011 3 0011 1001111 4 0100 1100110 5 0101 1101101 6 0110 1111101 7 0111 0000111 8 1000 1111111 9 1001 1101111 X XXXX 0000000 表2-1 模块如图4所示,由四位串行输入端AIN4[3..0]和七位串行输出端DOUT7[6..0]组成. 图4 VHDL实现方法如下所示: ARCHITECTURE ART OF YMQ

25、 IS BEGIN PROCESS(AIN4) BEGIN CASE AIN4 IS WHEN "0000"=>DOUT7<="0111111"; --0 WHEN "0001"=>DOUT7<="0000110"; --1 WHEN "0010"=>DOUT7<="1011011"; --2 WHEN "0011"=>DOUT7<="1001111"; --3 WHEN "0100"=>DOUT7<="1100110"; --4 WHEN "0101"=>DOUT7<="1101101

26、"; --5 WHEN "0110"=>DOUT7<="1111101"; --6 WHEN "0111"=>DOUT7<="0000111"; --7 WHEN "1000"=>DOUT7<="1111111"; --8 WHEN "1001"=>DOUT7<="1101111"; --9 WHEN OTHERS=>DOUT7<="0000000"; END CASE; END PROCESS; END ARCHITECTURE ART; 在程序中只考虑0000-1001(即0-9)地情况,将其转

27、化为相应地七段显示器地码子,其他情况不予考虑.綾镝鯛駕櫬鹕踪韦辚糴。 数字抢答器地实现 在每个模块完成之后,就要将它们合为一个整体,成为一个能提供所要求功能地系统. 电路图如下: 附 录 附录1 抢答鉴别模块VHDL程序(QDJB.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY QDJB IS PORT(CLR: IN STD_LOGIC; A, B, C, D: IN STD_LOGIC; A1,B1,C1,D1: OUT STD_LOGIC;

28、STATES: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END QDJB; ARCHITECTURE ART OF QDJB IS CONSTANT W1: STD_LOGIC_VECTOR:="0001"; CONSTANT W2: STD_LOGIC_VECTOR:="0010"; CONSTANT W3: STD_LOGIC_VECTOR:="0100"; CONSTANT W4: STD_LOGIC_VECTOR:="1000"; BEGIN PROCESS(CLR,A,B,C,D) BEGIN

29、 IF CLR='1' THEN STATES<="0000"; ELSIF (A='1'AND B='0'AND C='0'AND D='0') THEN A1<='1'; B1<='0'; C1<='0'; D1<='0'; STATES<=W1; ELSIF (A='0'AND B='1'AND C='0'AND D='0') THEN A1<='0'; B1<='1'; C1<='0'; D1<='0'; STATES<=W2; ELSIF (A='0'AND B='0'AND C='1'AND D='0') THEN

30、 A1<='0'; B1<='0'; C1<='1'; D1<='0'; STATES<=W3; ELSIF (A='0'AND B='0'AND C='0'AND D='1') THEN A1<='0'; B1<='0'; C1<='0'; D1<='1'; STATES<=W4; END IF; END PROCESS; END ART; 附录2 计分器模块VHDL程序(JFQ.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_

31、UNSIGNED.ALL; ENTITY JFQ IS PORT(RST: IN STD_LOGIC; ADD: IN STD_LOGIC; SUB: IN STD_LOGIC; CHOS: IN STD_LOGIC_VECTOR(3 DOWNTO 0); AA2,AA1,AA0,BB2,BB1,BB0: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); 驅踬髏彦浃绥譎饴憂锦。 CC2,CC1,CC0,DD2,DD1,DD0: OUT STD_LOGIC_VECTOR(3 DOWNT

32、O 0)); 猫虿驢绘燈鮒诛髅貺庑。 END JFQ ; ARCHITECTURE ART OF JFQ IS BEGIN PROCESS(RST,ADD,SUB,CHOS) VARIABLE POINTS_A2,POINTS_A1: STD_LOGIC_VECTOR(3 DOWNTO 0); 锹籁饗迳琐筆襖鸥娅薔。 VARIABLE POINTS_B2,POINTS_B1: STD_LOGIC_VECTOR(3 DOWNTO 0); 構氽頑黉碩饨荠龈话骛。 VARIABLE POINTS_C2,POINTS_C1: STD_LOGIC_VECT

33、OR(3 DOWNTO 0); 輒峄陽檉簖疖網儂號泶。 VARIABLE POINTS_D2,POINTS_D1: STD_LOGIC_VECTOR(3 DOWNTO 0); 尧侧閆繭絳闕绚勵蜆贅。 BEGIN IF (ADD'EVENT AND ADD='1') THEN IF RST='1' THEN POINTS_A2:="0001"; POINTS_A1:="0000"; POINTS_B2:="0001"; POINTS_B1:="0000"; POINTS_C2:="0001";

34、 POINTS_C1:="0000"; POINTS_D2:="0001"; POINTS_D1:="0000"; ELSIF CHOS="0001" THEN IF POINTS_A1="1001" THEN POINTS_A1:="0000"; IF POINTS_A2="1001" THEN POINTS_A2:="0000"; ELSE POINTS_A2:=POINTS

35、A2+"0001"; END IF; ELSE POINTS_A1:=POINTS_A1+"0001"; END IF; ELSIF CHOS="0010" THEN IF POINTS_B1="1001" THEN POINTS_B1:="0000"; IF POINTS_B2="1001" THEN POINTS_B2:="0000";

36、 ELSE POINTS_B2:=POINTS_B2+"0001"; END IF; ELSE POINTS_B1:=POINTS_B1+"0001"; END IF; ELSIF CHOS="0100" THEN IF POINTS_C1="1001" THEN POINTS_C1:="0000"; IF POINTS_C2="1001" THE

37、N POINTS_C2:="0000"; ELSE POINTS_C2:=POINTS_C2+"0001"; END IF; ELSE POINTS_C1:=POINTS_C1+"0001"; END IF; ELSIF CHOS="1000" THEN IF POINTS_D1="1001" THEN POINTS_D1:

38、"0000"; IF POINTS_D2="1001" THEN POINTS_D2:="0000"; ELSE POINTS_D2:=POINTS_D2+"0001"; END IF; ELSE POINTS_D1:=POINTS_D1+"0001"; END IF; END IF; ELSIF (SUB'EVENT AND S

39、UB='1') THEN IF RST='1' THEN POINTS_A2:="0001"; POINTS_A1:="0000"; POINTS_B2:="0001"; POINTS_B1:="0000"; POINTS_C2:="0001"; POINTS_C1:="0000"; POINTS_D2:="0001"; POINTS_D1:="0000"; ELSIF CHOS="0001" THEN IF POINTS_A1="0000" THEN

40、 POINTS_A1:="1001"; IF POINTS_A2="0000" THEN POINTS_A2:="1001"; ELSE POINTS_A2:=POINTS_A2+"1111"; END IF; ELSE POINTS_A1:=POINTS_A1+"1111"; END IF; ELSIF CHOS="

41、0010" THEN IF POINTS_B1="0000" THEN POINTS_B1:="1001"; IF POINTS_B2="0000" THEN POINTS_B2:="1001"; ELSE POINTS_B2:=POINTS_B2+"1111"; END IF; ELSE POINTS_B1:=POINTS_B1+"11

42、11"; END IF; ELSIF CHOS="0100" THEN IF POINTS_C1="0000" THEN POINTS_C1:="1001"; IF POINTS_C2="0000" THEN POINTS_C2:="1001"; ELSE POINTS_C2:=POINTS_C2+"1111"; END IF;

43、 ELSE POINTS_C1:=POINTS_C1+"1111"; END IF; ELSIF CHOS="1000" THEN IF POINTS_D1="0000" THEN POINTS_D1:="1001"; IF POINTS_D2="0000" THEN POINTS_D2:="1001"; ELSE POINTS_D2:=

44、POINTS_D2+"1111"; END IF; ELSE POINTS_D1:=POINTS_D1+"1111"; END IF; END IF; END IF; AA2<=POINTS_A2; AA1<=POINTS_A1; AA0<="0000"; BB2<=POINTS_B2; BB1<=POINTS_B1; BB0<="0000"; CC2<=POINTS_C2; CC1<=POINTS_C1; CC0<=

45、"0000"; DD2<=POINTS_D2; DD1<=POINTS_D1; DD0<="0000"; END PROCESS; END ART; 附录3 计时器模块VHDL程序(JFQ.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY JSQ IS PORT(CLR,LDN,EN,CLK: IN STD_LOGIC; TA,TB: IN STD_LOGIC; QA: OUT STD_L

46、OGIC_VECTOR(3 DOWNTO 0); QB: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END JSQ; ARCHITECTURE ART OF JSQ IS SIGNAL DA: STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL DB: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(TA,TB,CLR) BEGIN IF CLR='1' THEN DA<="0000"; DB<="0000";

47、 ELSE IF TA='1' THEN DA<=DA+'1' ; END IF; IF TB='1' THEN DB<=DB+'1'; END IF; END IF; END PROCESS; PROCESS(CLK) VARIABLE TMPA: STD_LOGIC_VECTOR(3 DOWNTO 0); VARIABLE TMPB: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF CLR='1' THEN TMPA:="0000

48、"; TMPB:="0110"; ELSIF CLK'EVENT AND CLK='1' THEN IF LDN='1' THEN TMPA:=DA; TMPB:=DB; ELSIF EN='1' THEN IF TMPA="0000" THEN TMPA:="1001"; IF TMPB="0000" THEN TMPB:="0110"; ELSE TMPB:=TMPB-1; END IF; ELS

49、E TMPA:=TMPA-1; END IF; END IF; END IF; QA<=TMPA; QB<=TMPB; END PROCESS; END ART; 附录4 译码器VHDL程序(YMQ.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY YMQ IS PORT(AIN4: IN STD_LOGIC_VECTOR(3 DOWNTO 0);

50、 DOUT7: OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END YMQ; ARCHITECTURE ART OF YMQ IS BEGIN PROCESS(AIN4) BEGIN CASE AIN4 IS WHEN "0000"=>DOUT7<="0111111"; --0 WHEN "0001"=>DOUT7<="0000110"; --1 WHEN "0010"=>DOUT7<="1011011"; --2 WHEN "0011"=>DOUT7<="1001111";

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服