Quartus波形仿真教程

下面我以一个模为60的BCD码加法计数器为例来讲解此教程。


先贴上代码:

module bcd60counter(clk,switch,count);
input clk,switch;
output[7:0]count;
reg[7:0]count=8'b0;
always@(posedge clk)
	begin
		if(switch)
			begin
				count=count+8'b1;
				//若低四位向高四位进位
				if(count[3:0]==4'b1010)
					count=count+8'b00000110;
				//若到了60
				if(count==8'b01100000)
					count=0;
			end
		else
			begin
				//count=count-8'b1;
				//若低四位向高四位借位
				if(count[3:0]==4'b0000)
					begin
						//count[3:0]=4'b1010
						count=count-8'b1;
						count=count-8'b00000110;
					end
				else
					count=count-8'b1;
				if(count==8'b00000000-8'b00000111)
					count=8'b01011001;
			end
	end
endmodule

程序写好后,点击如图按钮进行编译:
在这里插入图片描述
编译成功后,按如图所示顺序依次点击,建立波形文件。
在这里插入图片描述
在新窗口中,选择以下项,添加波形。
在这里插入图片描述
按以下顺序依次点击,选择波形:
在这里插入图片描述
依次点击完ok后,会看到以下界面:
在这里插入图片描述
下列图标中,最左端用于选择波形区间,第二个用于放大缩小,之后十一个用于设置之前选中的波形区间,后面的为仿真。设置好波形并仿真得到以下结果:
在这里插入图片描述


在这里插入图片描述
在使能端switch为高电平时,计数器从当前数字开始计数(向上计数),最高计到59,然后从0重新开始;在使能端为低电平时,计数器从当前数字开始计数(向下计数),最低到0,然后从59从新开始向下计数。

  • 18
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值