




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程 eda技术课程设计题目 数字式竞赛抢答器专业 电子信息工程 主要内容、基本要求、主要参考资料等主要内容:设计一个可容纳6组参赛的数字式抢答器,当第一个人按下抢答按钮时,其他组的按钮不起作用。当主持人按下“复位”按钮,所有组的按键才可用。基本要求:1、设计一个可容纳6组参赛的数字式抢答器,每组设一个按钮,供抢答使用。2、抢答器具有第一信号鉴别和锁存功能,使除第一抢答者外的按钮不起作用。3、设置一个主持人“复位”按钮。4、主持人复位后,开始抢答,第一信号鉴别锁存电路得到信号后,有指示灯显示抢答组别,扬声器发出2-3秒的音响。5、设置一个计分电路,每组开始预置100分,由主持人记分,答对一次加
2、10分,答错一次减10分。主要参考资料:1 潘松著.eda技术实用教程(第二版). 北京:科学出版社,2005.2 康华光主编.电子技术基础 模拟部分. 北京:高教出版社,2006.3 阎石主编.数字电子技术基础. 北京:高教出版社,2003.完成期限 2011.3.11 指导教师 专业负责人 2011年 3月7日一、总体设计思想1.基本原理本设计为六路智能抢答器,所以这种抢答器要求有六路不同组别的抢答输入信号,并能识别最先抢答的信号,直观地通过数显和蜂鸣等方式显示出组别;对回答问题所用的时间进行计时、显示、超时报警、预置答题时间,同时该系统还应有复位、倒计时启动功能。抢答过程:主持人按下系统
3、复位键(rst),系统进入抢答状态,计时模块和计分模块输出初始信号给数码显示模块并显示出初始值。当某参赛组抢先将抢答键按下时,系统将其余三路抢答信号封锁,同时扬声器发出声音提示,组别显示模块送出信号给数码显示模块,从而显示出该抢答成功组台号,并一直保持到下一轮主持人将系统清零为止。主持人对抢答结果进行确认,随后,计时模块送出倒计时计数允许信号,开始回答问题,计时显示器则从初始值开始以计时,在规定的时间内根据答题的正误来确定加分或减分,并通过数码显示模块将成绩显示出来。计时至0时,停止计时,扬声器发出超时报警信号,以中止未回答完问题。当主持人给出倒计时停止信号时,扬声器停止鸣叫。若参赛者在规定时
4、间内回答完为题,主持人可给出倒计时计数停止信号,以免扬声器鸣叫。主持人按下复位键,即rst为高电平有效状态,清除前一次的抢答组别,又可开始新的一轮的抢答。此抢答器的设计中采用自顶向下的设计思路,运用vhdl硬件描述语言对各个模块进行层次化、系统化的描述,并且先设计一个顶层文件,再把各个模块连接起来。2.设计框图抢答按钮优先编码电路锁存器译码电路显示电路显示电路译码电路计分电路预制报警电路控制电路主持人控制开关主电路二、设计步骤和调试过程总体设计电路1、 模块设计和相应模块程序将该任务分成几个模块进行设计,分别为:抢答器鉴别模块、抢答器记分模块、译码模块、数选模块、报警模块,最后是撰写顶层文件。
5、抢答器鉴别模块:在这个模块中主要实现抢答过程中的抢答功能,并能对超前抢答进行警告,还能记录无论是正常抢答还是超前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余过滤抢答封锁的功能。其中有六个抢答信号s0、s1、s2、s3、s4、s5;抢答使能信号s;抢答状态显示信号states;抢答与警报时钟信号clk2;系统复位信号rst;警报信号tmp。抢答鉴别模块图rst states3.0clk2 tmps0s1s2s3s4s5 qdjbvhdl源程序library ieee;-抢答鉴别模块use ieee.std_logic_1164.all;use ieee.std_logic_
6、unsigned.all;entity qdjb isport(rst,clk2:in std_logic; s0,s1,s2,s3,s4,s5:in std_logic; states:buffer std_logic_vector(5 downto 0);tmp:out std_logic);end qdjb;architecture one of qdjb issignal st:std_logic_vector(5 downto 0);beginp1:process(s0,rst,s1,s2,s3,s4,s5,clk2) begin if rst=0 then tmp=0;st=000
7、0; elsif clk2event and clk2=1 then if (s0=1 or st(0)=1)and not( st(1)=1 or st(2)=1 or st(3)=1 or st(4)=1 or st(5)=1 ) then st(0)=1; end if ; if (s1=1 or st(1)=1)and not( st(0)=1 or st(2)=1 or st(3)=1 or st(4)=1 or st(5)=1) then st(1)=1; end if ; if (s2=1 or st(2)=1)and not( st(0)=1 or st(1)=1 or st(
8、3)=1 or st(4)=1 or st(5)=1) then st(2)=1; end if ; if (s3=1 or st(3)=1)and not( st(0)=1 or st(1)=1 or st(2)=1 or st(4)=1 or st(5)=1) then st(3)=1;if (s4=1 or st(4)=1)and not( st(0)=1 or st(1)=1 or st(2)=1 or st(3)=1 or st(5)=1) then st(4)=1; end if ; if (s5=1 or st(5)=1)and not( st(0)=1 or st(1)=1 o
9、r st(2)=1 or st(3)=1 or st(5)=1) then st(5)=1; end if ;tmp=s0 or s1 or s2 or s3 or s4 or s5;end if ;end process p1;p2:process(states(0),states(1),states(2),states(3) ,states(4),states(5) begin if (st=0000) then states=0000; elsif (st=0001) then states=0001;elsif (st=0010) then states=0010; elsif (st
10、=0100) then states=0011;elsif (st=0100) then states=0100; elsif (st=0101) then states=0101; elsif (st=1000) then states=0110; end if; end process p2;end one;数据选择模块:在这个模块中主要实现抢答过程中的数据输入功能,输入信号a3.0、b3.0、c3.0;计数输出信号s;数据输出信号y;计数脉冲clk2,实现a、b、c按脉冲轮流选通,在数码管上显示。a3.0 s1.0b3.0 y3.0c3.0clk2rst sjxz数据选择模块vhdl源程
11、序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity sjxz is port (a,b,c: in std_logic_vector(3 downto 0);clk2,rst: in std_logic; s: out std_logic_vector(1 downto 0); y: out std_logic_vector(3 downto 0) ); end sjxz;architecture body_chooser of
12、 sjxz is signal count: std_logic_vector (1 downto 0); begin s=count; process(clk2,rst) begin if(rst=0)then count=10)then count=00; else countyyynull; end case; end process; end body_chooser报警模块:在这个模块中主要实现抢答过程中的报警功能,当主持人按下控制键,有限时间内有人抢答,有效电平输入信号i;状态输出信号q;计数脉冲clk2。报警模块图clk oialarmvhdl源程序library ieee;us
13、e ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity alarm isport(clk,i:in std_logic; q:out std_logic);end alarm;architecture behave of alarm is signal warn:std_logic; signal n:integer range 0 to 20;begin q= warn; process(clk) begin if clkevent and clk=1 then if i=0 then warn =0; elsif(i
14、=1and n=19)then warn =not warn; n=n+1; else warn dout7dout7dout7dout7dout7dout7dout7dout7dout7dout7dout7=0000000; end case; end process;end architecture art;译码显示电路图顶层文件:在这个模块中是对前面模块的综合编写的顶层文件。vhdl源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all
15、;entity qiangdaqi is port(clk,clk2,s,s0,s1,s2,s3,s4,s5,stop,rst:in std_logic; n,k,q_out:out std_logic; m:out std_logic_vector(1 downto 0); a,b,c,d,e,f,g:out std_logic);end qiangdaqi;architecture bhv of qiangdaqi iscomponent qdjb is port(clk2,rst:in std_logic; s0,s1,s2,s3,s4,s5:in std_logic; tmp:out
16、std_logic; states:out std_logic_vector(5 downto 0);end component;component js is port(clk,rst,s,stop:in std_logic; warn:out std_logic; ta,tb:buffer std_logic_vector(5 downto 0);end component;component sjxz is port(clk2,rst:in std_logic; s:out std_logic_vector(1 downto 0); a,b,c:in std_logic_vector(3
17、 downto 0); y:out std_logic_vector(3 downto 0);end component;component ymq is port(ain4: in std_logic_vector (3 downto 0); dout7: out std_logic_vector (6 downto 0);end component;component alarm is port(clk,i:in std_logic; q:out std_logic);end component;signal states_out,ta_out,tb_out,y_out:std_logic
18、_vector(3 downto 0);signal ledout:std_logic_vector(6 downto 0);signal w:std_logic;begina=ledout(6);b=ledout(5);c=ledout(4);d=ledout(3);e=ledout(2);f=ledout(1);gk,states=states_out);u2:js port map(clk,rst,s,stop,warn=n,ta=ta_out,tb=tb_out);u3:sjxz port map(clk2=clk2,rst=rst,s=m,a=states_out,b=ta_out,
19、c=tb_out,y=y_out);u4:ymq port map(ain4=y_out,dout7=ledout);u5:alarm port map(clk2,s,q_out);end bhv;2、 仿真及仿真结果分析抢答鉴别模块仿真图数据选择模块仿真图报警模块仿真图译码模块仿真图顶层文件仿真图clk接高电平,s0,s1,s2,sl3,s4,s5六个选手接低电平,鉴别器的输出接指示灯,译码器的输出接led数码管,计分器的输出接显示译码器。当主持人按下使能端时,六个选手同时抢答。如图所示,若s0抢答,即为高电平时,s0灯亮,若回答正确,对其加分,即当时钟出现上升沿时就进行加一或者减一的操作。
20、3、 实验调试结果按下rst键清零,按下s键,观察数码管是否开始倒计时,扬声器是否发出报警声,按下s0,观察数码管是否显示1和抢答的时间,再按s1,s2,s3,s4.s5均不改变显示,按下rst键,观察是否清零,再按s键,不按别的,直到计时时间到,观察是否显示00,扬声器是否发出报警第一个按下键的小组,抢答信号判定电路lock通过缓冲输出信号的反馈将本参赛组抢先按下按键的信号锁存,并且以异步清零的方式将其他参赛组的锁存器清零,组别显示、计时和计分会保存到主持人对系统进行清零操作时为止。当ini=1时系统复位,使组别显示信号g=0000,各组的指示灯信号s0=0,s1=0,s2=0,s3=0,s4=0,s5=0;当ini=0,即低电平有效,使其进入抢答鉴别状态,到clk的上升沿到来时,以a组抢答成功为例,当输入信号为a=1,b=0,c=0,d=0,输出信号g=1000,a1=1,即为鉴别出a组抢答成功,同时屏蔽其他组的输入信号,以免发生错误。三、结论及心得体会这次eda课程设计了一个星期,在这期间学到了很多很多的东西,同时不仅可以巩
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学生在线学习平台
- 江苏省安全文明施工措施费
- 项目进度汇报及协调通知
- 跨部门协作会议纪要与行动计划
- 高效会议管理技巧与实践指南
- 台风应急预案演练方案
- 项目预算控制表模板(财务部门)
- 可持续发展战略实践分享
- 电子交易系统操作指南
- 办公室职员健康促进措施
- 小学生防溺水安全教育主题班会ppt市公开课一等奖省名师优质课赛课一等奖课件
- 中国近代海关史课件
- 《人卫版第九版内科学心力衰竭》课件PPT
- 中药热盐包热熨讲稿
- 目视检测VT报告
- 四川省中小流域暴雨洪水计算
- 水泥熟料岩相分析
- 杂诗十二首其二陶渊明
- 第五届大广赛获奖作品
- 《广告摄影》课件第五讲 食品广告拍摄与后期制作
- (三起点)pep人教版五年级英语下学期Unit2单元课件全套
评论
0/150
提交评论