verilog hdl 程序纠错
10进制计数模块,输入1HZ和2HZ,显示输出的都是1HZmodulecount10(out,cout,en,clr,clk);inputen,clr,clk;outpu...
10进制计数模块,输入1HZ和2HZ,显示输出的都是1HZ
module count10(out,cout,en,clr,clk);
input en,clr,clk;output[3:0] out;output cout;reg[3:0] out;
always @(posedge clk or posedge clr)
begin if(clr) out<=0;
else if(en) begin if(out==9) out<=0;else out<=+1;end
end
assign cout=((out==9)&en)?1:0;
endmodule 展开
module count10(out,cout,en,clr,clk);
input en,clr,clk;output[3:0] out;output cout;reg[3:0] out;
always @(posedge clk or posedge clr)
begin if(clr) out<=0;
else if(en) begin if(out==9) out<=0;else out<=+1;end
end
assign cout=((out==9)&en)?1:0;
endmodule 展开
3个回答
展开全部
module count10(out,cout,en,clr,clk);
input en,clr,clk;output[3:0] out;
output cout;
reg[3:0] out;
always @(posedge clk or posedge clr)
begin if(clr) out<=0;
else if(en)
begin
if(out==9) out<=0;
else out<=out+1;///////////////////////这句话改了
end
end
assign cout=((out==9)&en)?1:0;
endmodule
//cout输出占空比不是50%,复位信号clr 也不是一般的处理方法。
input en,clr,clk;output[3:0] out;
output cout;
reg[3:0] out;
always @(posedge clk or posedge clr)
begin if(clr) out<=0;
else if(en)
begin
if(out==9) out<=0;
else out<=out+1;///////////////////////这句话改了
end
end
assign cout=((out==9)&en)?1:0;
endmodule
//cout输出占空比不是50%,复位信号clr 也不是一般的处理方法。
展开全部
按说这个代码没什么异常应该。输出恒为1HZ……这个太惊悚了,我比较怀疑是仿真没设好~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没明白问题
追问
就是这个哪里错了。。
追答
语法没什么问题,要看逻辑的话需要明白你究竟要做什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询