欢迎来到天天文库
浏览记录
ID:46799067
大小:641.37 KB
页数:10页
时间:2019-11-27
《quarter ii 4位数码管显示实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、贵州大学实验报告学院:电气工程学院专业:测控技术与仪器班级:测仪131姓名学号实验组实验时间2016.12.2指导教师成绩实验项目名称4位数码管显示实验实验目的通过利用硬件设计语言veriloag设计4位数码管显示电路、理解QuartusII平台进行硬件开发的方法、深入理解verilog语言及其设计方法。实验要求集中授课实验原理原理框图如下图4-1所示 FPGA控制数码管的动态扫描,采集数据和地址总线的数据,使能不同位的数码管,并将采集到的数据依次传送给段选译码模块,最后输出对应数字的段码,控制数码管显示对应总线的数据。图4-1原理框图实验
2、仪器PC机、QuartusII软件、KeilμVision2软件实验步骤1、首先,制作1位数码管显示电路,用verilong语言写。moduleseg7(clk,rst_n,data,seg,sel);inputclk;inputrst_n;input[3:0]data;outputreg[7:0]seg;outputreg[2:0]sel;always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginsel<=0;endelsebeginsel<=0;endendalways@(*)begini
3、f(!rst_n)beginseg=8'b1111_1111;endelsebegincase(data)0:seg=8'b1100_0000;1:seg=8'b1111_1001;2:seg=8'b1010_0100;3:seg=8'b1011_0000;4:seg=8'b1001_1001;5:seg=8'b1001_0010;6:seg=8'b1000_0010;7:seg=8'b1111_1000;8:seg=8'b1000_0000;9:seg=8'b1001_0000;10:seg=8'b1000_1000;11:seg=8'b
4、1000_0011;12:seg=8'b1100_0110;13:seg=8'b1010_0001;14:seg=8'b1000_0110;15:seg=8'b1000_1110;default:seg=8'b1111_1111;endcaseendendendmodule测试模块`timescale1ns/1psmoduleseg7_tb;regclk;reg[3:0]data;regrst_n;wire[7:0]seg;wire[2:0]sel;initialbeginclk=1;rst_n=0;data=10;#200.1rst_n=
5、1;endalways#10clk=~clk;seg7seg7(.clk(clk),.rst_n(rst_n),.data(data),.seg(seg),.sel(sel));Endmodule2、例化元件3、4位数码管的设计Frep模块modulefreq(clk,rst_n,clk_1k);inputclk;inputrst_n;outputregclk_1k;reg[19:0]count;always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginclk_1k<=1;count<=0;e
6、ndelsebeginif(count<24999)count<=count+1;elsebegincount<=0;clk_1k<=~clk_1k;endendendendmoduleSeg7模块moduleSEG7(clk,rst_n,data,seg,sel);inputclk;inputrst_n;input[15:0]data;outputreg[7:0]seg;outputreg[2:0]sel;reg[3:0]data_temp;reg[2:0]state;always@(posedgeclkornegedgerst_n)be
7、ginif(!rst_n)beginsel<=0;data_temp<=0;state<=0;endelsebegincase(state)0:beginsel<=0;data_temp<=data[15:12];state<=1;end1:beginsel<=1;data_temp<=data[11:8];state<=2;end2:beginsel<=2;data_temp<=data[7:4];state<=3;end3:beginsel<=4;data_temp<=data[3:0];state<=4;enddefault:stat
8、e<=0;endcaseendendalways@(*)beginif(!rst_n)beginseg=8'b1111_1111;endelsebegincase(data_te
此文档下载收益归作者所有