五邑大学学号显示电路的设计实验报告成绩指导教师日期张歆奕五邑大学实验报告实验课程名称:电子系统EDA院系名称:信息学院专业名称:电子信息工程实验项目名称:学号显示电路的设计班级:学号:报告人:实验二学号显示器一、实验目的1、练习使用VerilogHDL语言设计实现数字电路。2、练习利用VerilogHDL语言和状态机设计电路。3、熟悉EDA开发基本流程。4、掌握多个数码管动态扫描显示的原理及设计方法。二、实验原理用数码管除了可以显示0~9的阿拉伯数字外,还可以显示一些英语字母。数码管由7段显示输出,利用7个位的组合输出,就可以形成部分英语字母和0~9十个数字的显示。共阴数码管0~9和常见字母的7段显示关系如图1所示:(共阳数码管对共阴取反)。图1三、设计任务设计任务(一)1、用VerilogHDL设计单个数码管顺序显示学号(按一次按键,显示下一位学号字符);2、对设计进行仿真;3、锁定管脚并下载到开发板进行验证。设计任务(二) 1、用VerilogHDL设计八个数码管显示学号,并向左或者向右滚屏;2、对设计进行仿真;3、锁定管脚并下载到开发板进行验证。四、设计源程序和说明设计任务(一)学号显示源程序modulexuehao_display(clk,rst,out);inputclk,rst;outputreg[6:0]out;reg[3:0]state;parameters0=4'd0,s1=4'd1,s2=4'd2,s3=4'd3,s4=4'd4,s5=4'd5,s6=4'd6,s7=4'd7;always@(posedgeclkornegedgerst)beginif(!rst)beginout=7'b1111111;state=s0;endelse case(state) s0:beginout=7'b0110000;state<=s1;end//显示1 s1:beginout=7'b1101101;state<=s2;end//显示2 s2:beginout=7'b1111110;state<=s3;end//显示0 s3:beginout=7'b1110000;state<=s4;end//显示7 s4:beginout=7'b1111110;state<=s5;end//显示0 s5:beginout=7'b1101101;state<=s6;end//显示2 s6:beginout=7'b1111110;state<=s7;end//显示0 s7:beginout=7'b1011011;state<=s1;end//显示5 default:state<=0; endcaseendendmodule程序详解:这是一个非常简单的程序,定义8个输出变量,然后给他们赋值,使他们分别为12070205,然后通过数码管显示出来。设计任务(二)滚屏显示源程序用8个数码管显示学号,并滚屏设计源程序:moduleGunPingXianShi(H0,H1,H2,H3,H4,H5,H6,H7,clk,reset);inputclk,reset; /*输入输出设置*/outputreg[0:6]H0,H1,H2,H3,H4,H5,H6,H7;reg[3:0]out;parameterD0=7'b0110000,D1=7'b1101101,D2=7'b1111110,D3=7'b1110000,D4=7'b1111110,D5=7'b1101101,D6=7'b1111110,D7=7'b1011011,D8=7'b0110000; //设置参数always@(posedgeclkorposedgereset)//上升沿有效beginif(reset)out<=0; //清零信号elsebeginif(out==7)out<=0;//计数器 elseout<=out+1;endendalways@(out)begincase(out)4'h0:beginH0<=D1;H1<=D2;H2<=D3;H3<=D4;H4<=D5;H5<=D6;H6<=D7;H7<=D8;end//输出120702054'h1:beginH0<=D2;H1<=D3;H2<=D4;H3<=D5;H4<=D6;H5<=D7;H6<=D8;H7<=D1;end//输出207020514'h2:beginH0<=D3;H1<=D4;H2<=D5;H3<=D6;H4<=D7;H5<=D8;H6<=D1;H7<=D2;end//输出070205124'h3:beginH0<=D4;H1<=D5;H2<=D6;H3<=D7;H4<=D8;H5<=D1;H6<=D2;H7<=D3;end//输出702051204'h4:beginH0<=D5;H1<=D6;H2<=D7;H3<=
五邑大学学号显示电路的设计实验报告 来自淘豆网m.daumloan.com转载请标明出处.