基于MAX+PLUS软件的电子抢答器的设计
一.实验目的:
1.熟悉常用电子器件和常规实验仪器及电子设计常用软件。
2.回顾所学数字电子技术基础的基本理论和基本实验,掌握组合电路,时序电路…的综合使用及设计方法,达到数字实验课程大纲的基本要求。
3.初步掌握根据控制要求编制、调试程序的基本方法。
二.实验原理:
电子抢答器的原理图如下:
电子抢答器可同时供7名选手或七个代表队参加比赛,它们的编号分别为1、2、3、4、5、6、7,并各用一个抢答器按钮,按钮的编号与选手的编号相对应,分别是S1、S2、S3、S4、S5、S6、S7。节目主持人设置一个控制按钮K,用来控制系统的清零,使编号显示数码管显示“0”,并表示开始抢答。抢答器具有数据锁存和显示功能。抢答开始后,若有选手按下抢答器按钮,编号立即被锁存,并在LED数码管上显示出选手的编号。此外,还要封锁输入电路,禁止其它选手抢答。优先抢答选手的编号一直保持到主持人将系统清零为止。
三.实验器材:7个D触发器(dff),7个两输入端与门(and2)、2个非门(not)、1个12输入端或非门(nor12)和译码器LED7S_2。
四.实验步骤:
1. 在MAX+PLUSII环境下,在图形编辑窗口中,调入7个D触发器(dff)、7个两输入端与门(and2)、2个非门(not)、1个12输入端或非门(nor12)和译码器LED7S_2.
译码器LED7S_2的VHDL源程序如下:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY led7s_2 IS
PORT(CLR:IN BIT;
A:IN BIT_VECTOR(7 DOWNTO 0);
LED7S:OUT BIT_VECTOR(3 DOWNTO 0));
END;
ARCHITECTURE ONE OF led7s_2 IS
BEGIN
PROCESS(CLR,A)
BEGIN
IF CLR='0' THEN LED7S<="0000";
ELSE
CASE A(7 DOWNTO 0) IS
WHEN "00000001"=>LED7S<="0001";
WHEN "00000010"=>LED7S<="0010";
WHEN "00000100"=>LED7S<="0011";
WHEN "00001000"=>LED7S<="0100";
WHEN "00010000"=>LED7S<="0101";
WHEN "00100000"=>LED7S<="0110";
WHEN "01000000"=>LED7S<="0111";
WHEN OTHERS=>NULL;
END CASE;
END IF;
END PROCESS;
END;
2.按照原理图连线,检查无误后运行,并保证运行结果正确。
3.进行仿真,观察并记录仿真结果。
五.实验结果:
六.实验体会:
学会了项目的需求分析到功能逻辑时序的分析,从程序的设计到程序的调试。通过这次试验,对MAX+PLUSII这个软件有了更具体的认识,也学会了从理论到实际的转变思维,更重要的是锻炼了自己的动手能力。因为实际与理论有很大的区别,在我们学习的过程中不仅考验了我们对知识的吸收和掌握,而且也考验了我们的细心和耐心。这次实验设计更多的是让我看清楚了自己,明白了凡事都需要耐心,实践是检验真理的唯一标准。理论知识的不足在这次实习中表现的很明显。这将有助于我今后的学习,端正自己的学习态度,从而更加努力的学习。
本文来源:https://www.2haoxitong.net/k/doc/b055e525482fb4daa58d4b10.html
文档为doc格式