Verilog期末实验报告—六十进制计数器.doc
文本预览下载声明
苏州科技学院 实 验 报 告
课程名称: Verilog使用及其应用
实验名称: Verilog 六十进制计数器设计
学院: 电子科学与技术学院
专业: 电子科学与技术 班级: 2
实验日期: 指导教师:
姓名: 杨德彬 学号:1120106215
一、实验目的
三、实验内容
程序编码:
module CatShitOne(clk,ret,LED,saomiao);
input clk;
input ret;
output reg [2:0] saomiao;
output reg [6:0] LED;
reg [13:0] clk_ct;
reg pulse;
reg [3:0] SECL,SECH;
reg [3:0] MINL,MINH;
reg [3:0] LEDSTATE;
always @ (posedge clk)
begin
if(clk_ct==900)
begin
clk_ct=0;
pulse=~pulse;
end
else clk_ct=clk_ct+1;
end
always @ (posedge pulse or negedge ret)
if(!ret)
begin
SECL=0;
SECH=0;
MINL=0;
MINH=0;
end
else
begin
if(SECL==9)
begin
SECL=0;
if(SECH==5)
begin
SECH=0;
if(MINL==9)
begin
MINL=0;
if(MINH==5)
MINH=0;
else MINH=MINH+1;
end
else MINL=MINL+1;
end
else SECH=SECH+1;
end
else SECL=SECL+1;
end
always @ (posedge clk)
saomiao=saomiao+1;
always @ (saomiao)
case(saomiao)
3b000: LEDSTATE=4b0000;
3b001: LEDSTATE=4b0000;
3b010: LEDSTATE=4b0000;
3b011: LEDSTATE=MINH;
3b100: LEDSTATE=MINL;
3b101: LEDSTATE=4b1010;
3b110: LEDSTATE=SECH;
3b111: LEDSTATE=SECL;
default:LEDSTATE=SECL;//
endcase
always @ (LEDSTATE)
case(LEDSTATE)
4b0000: LED=7b1111110;
4b0001: LED=7b0110000;
4b0011: LED=7b1111001;
4b0100: LED=7b0110011;
4b0101: LED=7b1011011;
4b0110: LED=7b1011111;
4b0111: LED=7b1110000;
4b1000: LED=7b1111111;
4b1001: LED=7b1111011;
4b1010: LED=7b0000000;
default: LED=7b0000000;
endcase
endmodule
四、实验截图
1.正弦波示意图:(choose=0时的波形数值)
2.方波示意图:(choose=1时的波形数值)
3.正三角波示意图:(choose=2时的波形数值)
4.反三角波示意图:(choose=3时的波形数值)
五、实验总结
通过这次期末实验,更进一步认识了Verilog语言的使用,详细了解了整个设计制作和仿真流程,独立思考并通过一步步的调试,逐步摸索和进一步
显示全部