2022年2022年基于CPLD的智力竞赛抢答器 .pdf

上传人:Che****ry 文档编号:34869627 上传时间:2022-08-19 格式:PDF 页数:29 大小:644.09KB
返回 下载 相关 举报
2022年2022年基于CPLD的智力竞赛抢答器 .pdf_第1页
第1页 / 共29页
2022年2022年基于CPLD的智力竞赛抢答器 .pdf_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《2022年2022年基于CPLD的智力竞赛抢答器 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年基于CPLD的智力竞赛抢答器 .pdf(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、湖南工程学院课程设计课程名称嵌入式系统课题名称基于 CPLD 的智力竞赛抢答器专业电子信息工程班级电子信息 0703 学号200701030302 姓名田 博 文指导教师陈爱萍2010 年 12 月 20 日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 29 页 - - - - - - - - - 湖南工程学院课 程 设 计 任 务 书课程名称:嵌入式系统题目:基于 CPLD 的智力竞赛抢答器专业班级:电子信息 0703 学生姓名:田 博 文指导老师:陈爱萍审批:任务书

2、下达日期 2010 年 12 月 20 日设 计 完成日期 2010 年 12 月 31 日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 29 页 - - - - - - - - - 设计内容与设计要求CPLD 为复杂可编程逻辑器件, 通过 EDA技术对其进行编程, 可将一个较复杂的数字系统集成于一个芯片中,制成专用集成电路芯片,并可随时在系统修改其逻辑功能。有关知识可参见相关教材或参考书。一设计内容1. 设计一智力竞赛抢答器,可同时供8 名选手参加比赛。2. 给节目主

3、持人设置一个控制开关,控制系统清零和抢答开始。3. 抢答器具有锁存功能和显示功能。 抢答开始后, 若有选手按动抢答按钮,编号立即锁存,并在LED 数码管上显示选手编号,同时扬声器响,禁止其他选手抢答。4. 抢答器具有抢答定时功能,时间由主持人确定。5. 参赛选手在设定的时间内抢答有效,定时器停止工作。6. 如果定时时间到,无人抢答, 本次抢答无效,系统报警,并封锁输入电路,禁止超时抢答,定时器显示00 。7. 为每组设计一个计分电路,0999分,可加分,也可减分。二、设计要求:1、 设计思路清晰,给出整体设计框图;2、 设计各单元电路,完成其功能仿真和编译并生成低层模块;3、 完成顶层设计并编

4、译通过;4、 完成设计下载并调试电路;5、 写出设计报告;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 29 页 - - - - - - - - - 主要设计条件1.提供 EDA 实验室;2.提供 EL 实验箱和 CPLD 芯片; 3.提供设计软件说明书格式1.课程设计封面;2.任务书;3.说明书目录;4.设计总体思路,基本原理和框图(顶层电路图);5.单元电路设计(各次级模块电路图) ;6.设计仿真;7.编程下载;8.总结与体会;9.附录;10. 参考文献。名师资料总

5、结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 29 页 - - - - - - - - - 进度安排星期一、二:下达设计任务书,介绍课题内容与要求;查找资料,确定总体设计方案和单元电路设计;星期三第二周星期一:单元电路设计与仿真,硬件下载;第二周星期二、三:硬件下载;第二星期四、五:书写设计报告,打印相关图纸;答辩参考文献1. 康华光主编 .电子技术基础(数字部分) ,高等教育出版社。2. 阎石主编 . 电子技术基础(数字部分) ,清华大学出版社。3. 陈大钦主编,电子技术基础实

6、验,高等教育出版社。4. 彭介华主编,电子技术课程设计指导,高等教育出版社。5. 张原编著,可编程逻辑器件设计及应用,机械工业出版社。6.荀殿栋,徐志军编著,数字电路设计实用手册,电子工业出版社。7. 刘洪喜,陆颖编著 . VHDL 电路设计实用教程清华大学出版社名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 29 页 - - - - - - - - - 目录一、总体思路及原理 1 二、各级模块设计及仿真1 1、抢答启动模块1 (1)按键识别子模块2 (2)倒计时子模块4

7、 2、选手抢答模块6 (1)单个选手按键子模块6 (2)判断抢答选手子模块7 3、加减分模块9 (1)组别判断子模块9 (2)加减及寄存器子模块11 (3)分数选择输出模块13 4、显示模块14 5、蜂鸣器模块16 四、实验箱的调试 18 五、总结与体会 19 六、参考文献 21 七、总原理图 22 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 29 页 - - - - - - - - - - 1 - 一、总体思路及原理抢答器原理是根据所要设计的系统功能,将整个系统划分

8、成几个主要模块,再将每个模块细分成几个子模块,直到最底层的小模块容易编程实现为止。 只需对底层元件编程实现, 最后将各模块连接起来组成所需的系统。对于一个抢答器系统,可将其分为五个模块:选手抢答模块、抢答启动模块、加减分模块、显示模块、蜂鸣器控制模块,其中抢答启动模块具有启动抢答及启动定时功能,输出使能信号给选手识别模块,以及抢答剩余时间给显示模块; 选手识别模块完成锁存抢答信号的功能,并输出选手号给显示模块; 蜂鸣器对抢答成功以及超时鸣声报警;显示模块对输入的数据进行显示。二、各级模块设计1、抢答启动模块启动模块除了有启动的功能外,还有启动定时的功能。 定时时间分为 5 秒和 20 秒两种,

9、使用两个按键对应两种限时抢答。为此,将本模块再划分为2 个子模:1)按键识别子模块按键的识别即对输入信号进行电平变化检测,电平发生跳变就认为是键被按下。但VHDL 程序中一个结构体内不能同时对两个信号进行电平跳变的检测, 所以对本模块的程序设计采用状态机来实现,并使用统一的时钟信号来扫描按键的电平状态。蜂鸣器模块选手抢答模块抢答启动模块加减分模块显示模块2.得分1.选手号3.倒计时名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 29 页 - - - - - - - - -

10、 - 2 - CLK1 START5 STAR20 RST B A S_FLAG 按键识别子模块对 START5和 START20两个按键定义三种状态, START5按下为 ST1状态,此时两个按键 “START5&START20”输入电平为“01” ;START20按下为 ST2 状态,此时电平为“ 10” ;两个都没按下为ST0 状态,此时电平为“ 11” 。状态转换图如图所示。本模块程序为:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY START_5_20 IS POR

11、T(CLK1,RST,START5,START20:IN STD_LOGIC; B,A:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); -输出定时初值S_FLAG:OUT STD_LOGIC); -置数信号END ENTITY; ARCHITECTURE ONE OF START_5_20 IS SIGNAL DATAIN:STD_LOGIC_VECTOR(1 DOWNTO 0); TYPE ST_TYPE IS (ST0,ST1,ST2); -定义状态SIGNAL C_ST:ST_TYPE; BEGIN DATAIN=START5&START20; -两个输入信号放在一起

12、判断PROCESS(RST,CLK1) BEGIN IF RST=0 THEN -复位B=0000;A=0000;C_ST=ST0;S_FLAG IF DA TAIN=01 THEN C_ST=ST1; -输入信号为01,转 ST1 状态按键识别模块状态转换图ST0 ST1 ST2 “ 01”其他“ 11”“ 11”其他“ 10”其他名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 29 页 - - - - - - - - - - 3 - 按键识别模块仿真波形S_FLAG=

13、1; -置数信号有效B=0000;A=0101; -定时初值“ 05”ELSIF DATAIN=10 THEN C_ST=ST2; -输入信号为10,转 ST1 状态S_FLAG=1; -置数信号有效B=0011;A=0000; -定时初值“ 30”ELSE C_STIF DATAIN=11 THEN C_ST=ST0;- 防按键抖动,为11 时才转 ST0 状态S_FLAG=0; -置数信号无效ELSE C_STIF DATAIN=11 THEN C_ST=ST0;S_FLAG=0; ELSE C_STC_ST=ST0;B=0000;A=0000; END CASE; END IF; END

14、 PROCESS; END ARCHITECTURE; 本模块仿真波形如图所示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 29 页 - - - - - - - - - - 4 - 2)倒计时子模块倒计时需要 1Hz 的脉冲输入,每来一个上升沿,进行一次减一运算,将结果输出到 TIMEB 、TIMEA ;置数信号 LOAD 输入有效,读入B、A 端口的数据;输入 L_CR 信号与选手识别模块连接,当选手抢答成功后,L_CR 信号为 0,将倒计时清 0.;若倒计时到,没

15、有选手抢答,则在 SR1 输出 1 使扬声器发声。同时输出信号给选手抢答模块,禁止选手抢答。本模块程序为:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DE_COUNT IS PORT(CLK2,LOAD,L_CR,RST:IN STD_LOGIC; B,A:IN STD_LOGIC_VECTOR(3 DOWNTO 0); TIMEB,TIMEA:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); TIMEOUT,SR1:OUT STD_LOGIC); END

16、 ENTITY; ARCHITECTURE TWO OF DE_COUNT IS BEGIN PROCESS(LOAD,L_CR,RST,CLK2) VARIABLE P1,P0:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF LOAD=1 THEN P1:=B;P0:=A; -指数信号有效,将B、A 值读入 P1、P0 ELSIF L_CR=0 THEN -有选手抢答成功,L_CR 输入为 0,定时时间清0 P1:=0000;P0:=0000;TIMEOUT=0;SR1=1; ELSIF RST=0 THEN P1:=0000;P0:=0000;TIMEOUT=

17、1;SR10 THEN P1:=P1-1;P0:=1001; -若个位为 0,十位减 1,个位赋为9 END IF; ELSE P0:=P0-1; -若个位不为0,个位直接减一IF P0=0000 AND P1=0000 THEN TIMEOUT=1;SR1=1; -若时间到,输出锁存信号END IF; CLK2 B A LOAD RST L_CR TIMEB TIMEA TIMEOUT SR1 倒计时模块名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 29 页 - -

18、 - - - - - - - - 5 - 倒计时模块仿真波形END IF; END IF; TIMEB=P1;TIMEACLK1,START5=START5,START20=START20, RST=RST,B=m,A=n,S_FLAG=p); U2:DE_COUNT PORT MAP(CLK2=CLK2,B=m,A=n,LOAD=p,RST=RST, L_CR=L_CR,TIMEB=TIMEB,TIMEA=TIMEA, TIMEOUT=TIMEOUT,SR1=SR1); END ARCHITECTURE; 2、选手抢答模块将本模块划分为两个子模块: 单个选手按键模块和判断抢答选手模块。最后将

19、 8 个选手按键模块和 1 个判断抢答选手模块连接起来,得到整个选手抢答模块。1)单个选手按键子模块按键输入相当于该实体的时钟信号,键被按下,等于来一个脉冲,输出信号给判断模块进行选手号的判断。只要有选手抢答成功, 相关模块会输出信号使 8 个按键模块的 LOCK 信号有效,禁止其他选手抢答。如图所示。本模块程序如下:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY BUTTON1 IS PORT(LOCK , BUTTON , RST :IN STD_LOGIC; PRESSED:OUT STD_LOGIC); END ENTITY; ARC

20、HITECTURE B1 OF BUTTON1 IS BEGIN RST BUTTON LOCK PRESSED 单个选手按键模块名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 29 页 - - - - - - - - - - 7 - 倒计时模块仿真波形PROCESS(RST , BUTTON) -使用进程时刻监测RST、BUTTON 信号BEGIN IF RST=0 THEN PRESSED=0; -复位ELSIF BUTTONEVENT AND BUTTON=0 T

21、HEN IF LOCK=1 THEN -键被按下并且LOCK 信号无效PRESSED=1; -则输出信号给判断模块END IF; END IF; END PROCESS; END ARCHITECTURE; 2)判断抢答选手子模块本子模块接收 8 个按键子模块的输出信号, 如收到 1 号子模块输出的高电平,则输出选手号“0001” ;并发出信号使扬声器发声并控制8个按键子模块使它们的LOCK 信号有效,禁止其他选手抢答。本子模块端口设置如图所示。本子模块程序如下:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY IDENTIFIER IS PO

22、RT(PP1,PP2,PP3,PP4,PP5,PP6,PP7,PP8:IN STD_LOGIC; P_NUM:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); LOCK,SR1:OUT STD_LOGIC); END ENTITY; ARCHITECTURE ONE OF IDENTIFIER IS SIGNAL P:STD_LOGIC_VECTOR(7 DOWNTO 0); 判断选手模块PP1 PP2 PP7 PP8 P_NUM 3.0 LOCK .SR1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师

23、精心整理 - - - - - - - 第 13 页,共 29 页 - - - - - - - - - - 8 - 判断抢答选手模块仿真波形BEGIN PP_NUM=0001;LOCK=0;SR1P_NUM=0010;LOCK=0;SR1P_NUM=0011;LOCK=0;SR1P_NUM=0100;LOCK=0;SR1P_NUM=0101;LOCK=0;SR1P_NUM=0110;LOCK=0;SR1P_NUM=0111;LOCK=0;SR1P_NUM=1000;LOCK=0;SR1P_NUM=0000;LOCK=1;SR1LOCK,B=P1,RST=RST,PRESSED=a1); U2:B

24、UTTON1 PORT MAP(LOCK=LOCK,B=P2,RST=RST,PRESSED=a2); U3:BUTTON1 PORT MAP(LOCK=LOCK,B=P3,RST=RST,PRESSED=a3); U4:BUTTON1 PORT MAP(LOCK=LOCK,B=P4,RST=RST,PRESSED=a4); U5:BUTTON1 PORT MAP(LOCK=LOCK,B=P5,RST=RST,PRESSED=a5); U6:BUTTON1 PORT MAP(LOCK=LOCK,B=P6,RST=RST,PRESSED=a6); U7:BUTTON1 PORT MAP(LOCK

25、=LOCK,B=P7,RST=RST,PRESSED=a7); U8:BUTTON1 PORT MAP(LOCK=LOCK,B=P8,RST=RST,PRESSED=a8); U9:IDENTIFIER PORT MAP(PP1=a1,PP2=a2,PP3=a3,PP4=a4,PP5=a5,PP6=a6, PP7=a7,PP8=a8,P_NUM=P_NUM,LOCK=LOCK_S,SR1=SR1); END ARCHITECTURE; 3、加减分模块加减分模块要识别按下的按键:加 5 分按键及减 5 分按键。所以采用状态机的方法来识别。 将本模块划分为三个子模块: 组别判断子模块,加减及寄存器

26、子模块,分数选择输出子模块。1)组别判断子模块该模块要实现的功能是根据抢答成功的选手编号,判断出该选手属于哪组,并输出使能信号允许该组的分数寄存器进行加减操作。如图所示。程序为:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY DECODE IS PORT(CLK:IN STD_LOGIC; P_NUM:IN STD_LOGIC_VECTOR(3 DOWNTO 0); CLK P_NUM3.0 EN1 EN2 EN3 EN4 组别判断模块名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -

27、 - 名师精心整理 - - - - - - - 第 15 页,共 29 页 - - - - - - - - - - 10 - 组别判断模块仿真波形EN1,EN2,EN3,EN4:OUT STD_LOGIC); END ENTITY; ARCHITECTURE ONE OF DECODE IS SIGNAL E:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(CLK) -引入时钟信号,协调各部分电路的工作BEGIN IF CLKEVENT AND CLK=1 THEN CASE P_NUM IS WHEN 0001=EEEEEEEEE=0000; -其他情

28、况则四个分数锁存器都不工作END CASE; END IF; END PROCESS; EN4=E(3);EN3=E(2);EN2=E(1);EN1=E(0); END ARCHITECTURE; 程序仿真波形如图所示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 29 页 - - - - - - - - - - 11 - 2)加减及寄存器子模块本模块的状态机转换过程为:将ADD 和 SUB 信号并置,并检测其电平变化。当ADD 按下时,“ ADD&SUB ”的电平为

29、“ 01”,弹起时恢复为“ 11”。转换图如图所示。本模块另外还需实现的功能是寄存功能。LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY COUNTER1 IS PORT(CLK,EN:IN STD_LOGIC; ADD,SUB:IN STD_LOGIC; AA2,AA1,AA0:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); END ENTITY; ARCHITECTURE ONE OF COUNTER1 IS SIGNAL A:STD_LOGIC_VECT

30、OR(1 DOWNTO 0); TYPE ST_TYPE IS (ST0,ST1,ST2); SIGNAL C_ST:ST_TYPE; BEGIN AIF A=01 THEN -A 为“ 01”,说明 ADD 按下C_ST=ST1; -下一状态转 ST1,以等待按键弹起CLK ADD SUB EN AA2 AA1 AA0 加减及寄存器模块加减子模块状态转换图ST0 ST1 ST2 “ 01”其它“ 11”“ 11”其它“ 10”其它名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17

31、 页,共 29 页 - - - - - - - - - - 12 - IF P1=1001 THEN - 十位为 9,进 1 为 0,再向百位进1 P1:=0000; IF P2=1001 THEN -百位为 9,进一为 0 P2:=0000; ELSE P2:=P2+1; -百位不为 9,百位加 1 END IF; ELSE P1:=P1+1; -十位不为 9,加一END IF; ELSIF A=10 THEN -A 为“ 10”,说明 SUB 按下C_ST=ST2;P0:=0000;- 下一状态转ST2,以等待按键弹起IF (P2/=0 OR P1/=0 OR P0/=0) THEN IF

32、 P1=0000 THEN P1:=1001; P2:=P2-1;- 十位向百位借1 ELSE P1:=P1-1; -十位不为 0,直接减1 END IF; END IF; ELSE C_STIF A=11 THEN -A 为“ 11”,说明按键弹起C_ST=ST0; -回到 ST0 继续监视按键ELSE C_STIF A=11 THEN C_ST=ST0; ELSE C_STC_ST=ST0; END CASE; END IF; END IF; AA2=P2;AA1=P1;AA0D2=AA2;D1=AA1;D0D2=AA2;D1=AA1;D0D2=BB2;D1=BB1;D0D2=BB2;D1

33、=BB1;D0D2=CC2;D1=CC1;D0D2=CC2;D1=CC1;D0D2=DD2;D1=DD1;D0D2=DD2;D1=DD1;D0D2=0000;D1=0000;D0=0000; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 29 页 - - - - - - - - - - 14 - 分数选择输出模块仿真波形END CASE; END PROCESS; END ARCHITECTURE; 仿真波形如图所示。4、显示模块本模块根据送来的数据:抢答成功选手号,

34、选手分数、倒计时时间,将相应的字形码送数码管显示。端口设置如图所示。该图中, BT 为数码管的位选信号, SG 为数码管的段选信号。另外一图为数码管的分配。左起第一位为选手编号,第3、4 位为该选手的分数,最后两位为倒计时。程序如下:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DISPLAY IS PORT(CLK:IN STD_LOGIC; SCORE2,SCORE1,SCORE0,P_NUMBER,TIMEB,TIMEA:IN STD_LOGIC_VECTOR(3 DO

35、WNTO 0); CLK P_NUMBER3.0 SCORE23.0 SCORE13.0 SCORE03.0 TIMEB3.0 TIMEA3.0 BT7.0 SG7.0 选手号分数倒计时显示模块数码管分配名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 29 页 - - - - - - - - - - 15 - BT,SG:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); END ENTITY; ARCHITECTURE ONE OF DISPLAY I

36、S SIGNAL CNT8:STD_LOGIC_VECTOR(2 DOWNTO 0); SIGNAL A:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN P1:PROCESS(CLK) BEGIN IF CLKEVENT AND CLK=1 THEN -时钟信号一来,显示下一位CNT8BT=10000000;ABT=01000000;ABT=00100000;ABT=00010000;ABT=00001000;ABT=00000100;ABT=00000010;ABT=00000001;ASGSGSGSGSGSGSGSGSGSGSGNULL; END CASE; END

37、 PROCESS; END ARCHITECTURE; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 29 页 - - - - - - - - - - 16 - 显示模块仿真波形本模块仿真波形如图所示。5、蜂鸣器模块当 SR1 鸣声信号来时,输出CLK2 (2KHz)驱动蜂鸣器发声。CLK1 用于扫描 SR1的电平变化, SR1上升沿来到,允许 CLK2 输出,并持续一段时间。本模块程序如下:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.

38、ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY SPEAKER IS PORT(CLK1,SR1,CLK2:IN STD_LOGIC; S:OUT STD_LOGIC); END ENTITY; ARCHITECTURE ONE OF SPEAKER IS TYPE ST_TYPE IS (ST0,ST1); SIGNAL C_ST:ST_TYPE; SIGNAL A:STD_LOGIC; BEGIN PROCESS(CLK1) VARIABLE P:STD_LOGIC_VECTOR(7 DOWNTO 0);-P用于定时,使蜂鸣器发声持续BEGIN I

39、F CLK1EVENT AND CLK1=1 THEN CASE C_ST IS WHEN ST0=IF SR1=1 THEN -SR1 信号有上升沿P:=00111111; CLK1 CLK2(2KHz) SR1 S 蜂鸣器模块名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 29 页 - - - - - - - - - - 17 - 蜂鸣器模块仿真波形C_ST=ST1;A=1;- 蜂鸣器发声,开始定时ELSE C_ST=ST0;AIF P/=0 THEN -定时还没到

40、,等待P:=P-1;C_ST=ST1; ELSE A=0; -定时到,蜂鸣器停止发声IF SR1=1 THEN C_ST=ST1; -等待系统复位ELSE C_STC_ST=ST0;A=0; END CASE; END IF; END PROCESS; S=CLK2 AND A; -只有 A 为 1 时,蜂鸣器才发声END ARCHITECTURE; 本模块的仿真波形如图所示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 29 页 - - - - - - - - -

41、- 18 - 三、实验箱的调试1、将指拨开关全拨到高电平。按下“RESET”键。观察数码管,启动状态时选手编号、分数等都显示0。2、拨动指拨开关START20,启动 30 秒定时抢答。3、拨动指拨开关PLAYER3,LED 灯闪了一下,数码管上显示“3 000 00”,说明 3 号选手抢答成功。4、拨动其他指拨开关PLAYER1、PLAYER2数码管上显示数据不变,说明抢答电路已锁。5、拨动指拨开关ADD5,数码管上显示“ 3 010 00”,分数加了10 分。再拨一次,显示“ 5 020 00”。6、按下“ RESET”键,数码管上显示“ 0 000 00”。7、拨动指拨开关START5,数

42、码管倒计时部分依次显示“05”、“04”、“ 03”、“ 02”、“ 01”最后“ 00”,同时 LED 灯闪一下。说明定时时间到。8、重复第、步。此时数码管显示“3 020 00”,说明分数能够保存,也能正确读出。拨动SUB5 开关,显示“ 3 010 00”。9、启动 30 秒抢答,拨动其他选手的抢答按键,并进行加分减分操作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 29 页 - - - - - - - - - - 19 - 四、总结与体会这次课程设计是设计抢

43、答器,抢答器平时是很熟悉也见过不少,但是这次要自己来设计确实有点小难度,但是我觉得很有意义, 因为这次设计不仅要在程序上调试成功还要把它接到硬件上去调试,这样就是一个可以运用的实物了。 我很期待自己的成果, 自己设计生产的东西到底能不能用。刚开始着手时真的有点不知所措,不晓得应该从哪里入手。但是我没有轻易放弃,我不断地查阅课本质料找了不少关于这方面的程序,我把总方案划分成了几个模块,先从容易的自己比较了解的入手,很快我就做好了显示和加减分的模块,这样一来我就更有信心了。 不懂得的地方我就问老师找不到老师我就问同学,最后所有的模块都被我一个一个的搞了出来,我很开心,我觉得我这些天来的努力没有白费

44、,我觉得自己能行。就在我以为自己要取得成功的时候我又一次的倒下了。我把所有的程序都弄好了, 程序在网上的调试也很成功没有什么错误,然而但我把程序载入调试箱调试的时候却怎么也调试部成功,我很沮丧,我不明白。我还怀疑是不是箱子有问题而不是我自己有问题,我很烦恼。就在这时候我的同学帮助了我, 他见我沮丧着脸就走来细心的更我说,调试的时候要细心点, 说不定一不小心把哪一跟先接错了就会影响你全部的结果。听他这么一说我顿然醒悟,我把所有的接线一条一条的检查,最后果真若他所说的一样, 我把好几条线给接错了。 我很懊恼我的粗心大意,改正过错误之后抢答器就出来了,但是和我想的又不一样,有的模块已经可以正常运行了

45、, 可还是有不少错误, 我一一检查就是搞不懂的加减器没有效用。 最后我还是不得不求教与我们的陈老师,在她一一的指导之下我最终完成的调试,我的抢答器很成功,不必别人的差,有很名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 25 页,共 29 页 - - - - - - - - - - 20 - 多功能都是别人没有的,我很开心,我自己的产品自己的劳动成果。自己运用所学所做的。通过这短短的两周里课程设计的学习,我学到了很多的知识,从中也锻炼了我的动手能力还有不怕失败的意志。最后我要感谢调试

46、中给我帮助的队友同学,还有含辛茹苦、默默的在后面辅导我的陈老师,我的成功离不开同学的帮助, 更离不开陈老师的细心指导, 如果不是他们我想我不会这么快就完成的。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 26 页,共 29 页 - - - - - - - - - - 21 - 六、参考文献1. 康华光主编 .电子技术基础(数字部分) ,高等教育出版社。2. 阎石主编 . 电子技术基础(数字部分) ,清华大学出版社。3. 陈大钦主编,电子技术基础实验,高等教育出版社。4. 彭介华主编

47、,电子技术课程设计指导,高等教育出版社。5. 张原编著,可编程逻辑器件设计及应用,机械工业出版社。6.荀殿栋,徐志军编著,数字电路设计实用手册,电子工业出版社。7. 刘洪喜,陆颖编著 . VHDL 电路设计实用教程清华大学出版社名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 27 页,共 29 页 - - - - - - - - - 六、附录(原理图)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -

48、 - - - - - 第 28 页,共 29 页 - - - - - - - - - 电气与信息工程系课程设计评分表项目评价设计方案的合理性与创造性硬件制作或软件编程完成情况*硬件制作测试或软件调试结果*设计说明书质量设计图纸质量答辩汇报的条理性和独特见解答辩中对所提问题的回答情况完成任务情况独立工作能力组织纪律性(出勤率)综合评分指导教师签名: _ 日期:_ 注:表中标 *号项目是硬件制作或软件编程类课题必填内容;此表装订在课程设计说明书的最后一页。课程设计说明书装订顺序:封面、任务书、目录、正文、评分表、附件(非16K 大小的图纸及程序清单) 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 29 页,共 29 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁