quarter ii 4位数码管显示实验Word文档下载推荐.docx

上传人:b****8 文档编号:22666399 上传时间:2023-02-05 格式:DOCX 页数:12 大小:562.65KB
下载 相关 举报
quarter ii 4位数码管显示实验Word文档下载推荐.docx_第1页
第1页 / 共12页
quarter ii 4位数码管显示实验Word文档下载推荐.docx_第2页
第2页 / 共12页
quarter ii 4位数码管显示实验Word文档下载推荐.docx_第3页
第3页 / 共12页
quarter ii 4位数码管显示实验Word文档下载推荐.docx_第4页
第4页 / 共12页
quarter ii 4位数码管显示实验Word文档下载推荐.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

quarter ii 4位数码管显示实验Word文档下载推荐.docx

《quarter ii 4位数码管显示实验Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《quarter ii 4位数码管显示实验Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。

quarter ii 4位数码管显示实验Word文档下载推荐.docx

实验步骤

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)

begin

if(!

rst_n)

begin

sel<

=0;

end

else

always@(*)

seg=8'

b1111_1111;

case(data)

0:

b1100_0000;

1:

b1111_1001;

2:

b1010_0100;

3:

b1011_0000;

4:

b1001_1001;

5:

b1001_0010;

6:

seg=8'

b1000_0010;

7:

b1111_1000;

8:

b1000_0000;

9:

b1001_0000;

10:

b1000_1000;

11:

b1000_0011;

12:

b1100_0110;

13:

b1010_0001;

14:

b1000_0110;

15:

b1000_1110;

default:

endcase

endmodule

 

测试模块

`timescale1ns/1ps

moduleseg7_tb;

regclk;

reg[3:

0]data;

regrst_n;

wire[7:

wire[2:

initial

clk=1;

rst_n=0;

data=10;

#200.1

rst_n=1;

end

always#10clk=~clk;

seg7seg7(

.clk(clk),

.rst_n(rst_n),

.data(data),

.seg(seg),

.sel(sel)

);

Endmodule

2、例化元件

3、4位数码管的设计

Frep模块

modulefreq(

clk,

rst_n,

clk_1k

);

inputclk;

inputrst_n;

outputregclk_1k;

reg[19:

0]count;

always@(posedgeclkornegedgerst_n)

begin

if(!

begin

clk_1k<

=1;

count<

=0;

end

else

begin

if(count<

24999)

count<

=count+1;

else

begin

count<

clk_1k<

=~clk_1k;

end

end

end

endmodule

Seg7模块

moduleSEG7(

data,

seg,

sel

input[15:

outputreg[7:

outputreg[2:

reg[3:

0]data_temp;

reg[2:

0]state;

if(!

begin

sel<

data_temp<

state<

else

case(state)

0:

sel<

=data[15:

12];

state<

1:

sel<

data_temp<

=data[11:

8];

state<

=2;

end

2:

=data[7:

4];

=3;

3:

=4;

data_temp<

=data[3:

0];

default:

state<

endcase

end

end

seg=8'

end

else

case(data_temp)

0:

seg=8'

endcase

end

endmodule

Top模块

moduletop(

rst_n,

data,

seg,

sel

);

inputclk;

inputrst_n;

input[15:

output[7:

output[2:

wireclk_1k;

freqfreq(

.clk(clk),

.rst_n(rst_n),

.clk_1k(clk_1k)

);

SEG7SEG7(

.clk(clk_1k),

.rst_n(rst_n),

.data(data),

.seg(seg),

.sel(sel)

);

endmodule

moduletop_vlg_tst();

//constants

//generalpurposeregisters

regeachvec;

//testvectorinputregisters

reg[15:

//wires

//assignstatements(ifany)

toptop(

//portmap-connectionbetweenmasterportsandsignals/registers

.rst_n(rst_n),

begin

data=15h123456;

#200.1

always#10clk=~clk;

endmodule

4、4位数码管的例化

实验内容

设计一个4位数码管显示电路:

要求在QuartusII软件平台上用verilog语言设计出一个4位数码管显示电路,并通过编译及仿真检查设计结果。

实验数据

一位数码管的仿真图像

4位数码管的仿真

实验总结

由于初次用到modelsim仿真软件,在使用过程中出现了很多问题,有的问老师和师兄,还有一部分只能通过网络上进行查询,所以花费的时间就很多,做起来难度很大,但是通过这次的学习我也学到了很多东西,多动手多动脑才能更好的学习。

指导教师意见

签名:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 英语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1