数字逻辑:23-69计数(加法)器(使用MAX+plus II 、Verilog语言 编写)

代码:

module counter23_69(reset,clk,mid_H,mid_L,mid_L_cy);

    input reset,clk;
    output[3:0] mid_H,mid_L;
    output mid_L_cy;
    reg[3:0] mid_H,mid_L;
    wire mid_L_cy;
    assign mid_L_cy=(mid_L==4'd9)?1:0;
    always @ (posedge clk)
		begin
        	if(reset) mid_L<=4'd3;
        	else if(mid_L_cy==1) 
                 begin
                     if(mid_H==4'd6) mid_L<=4'd3;
                     else mid_L<=4'd0;
                 end
        	else mid_L<=mid_L+1;
    	end
    always @ (posedge clk)
		begin
        	if(reset) mid_H<=4'd2;
        	else if(mid_L_cy==1)
				begin
            		if(mid_H==4'd6) mid_H<=4'd2;
            		else mid_H<=mid_H+1;
        		end
        	else mid_H<=mid_H;
		end

endmodule

说明:

1、 仅设置一个眼位,足够用了。
2、 高位是否变化通过低眼位判断,即:只有在 mid_L_cy==1 时高位才能变化。

注意:此代码不够完善,仅能解决“XX-X9”的计数器(比如此题,把69变成68就缺条件了)。完善代码见下篇。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值