这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » FPGA » 超级入门级菜鸟求助,求大神帮看看编写的代码哪里出错了

共2条 1/1 1 跳转至

超级入门级菜鸟求助,求大神帮看看编写的代码哪里出错了

菜鸟
2015-10-22 01:10:43     打赏

目的:在ED板上的8个数字显示器打出HELLO,用时钟控制它循环,就是HELLO往左边跑

代码:

module div(clk,clkout);

input clk;

output clkout;

reg[20:0]m;

always@(posedge clk)

m=m+1;

assign clkout=m[20];

endmodule


module counter(clk,rst,cnt);

input clk,rst;

output[3:0]cnt;

reg [3:0]cnt1;

parameter d=4'b1001;

always@(posedge clk or posedge rst)

begin

if(rst) cnt1=0;

else if(cnt1==d) cnt1=0;

else cnt1=cnt1+1;

end

assign cnt=cnt1;

endmodule




module connect(cnt,a7,a6,a5,a4,a3,a2,a1,a0);

input[3:0]cnt;

output[2:0]a7,a6,a5,a4,a3,a2,a1,a0;

reg a7,a6,a5,a4,a3,a2,a1,a0;

always@(cnt)

case(cnt)

4'b0001:

begin

a7=3'b111;a6=3'b111;a5=3'b111;a4=3'b000;a3=3'b001;a2=3'b010;a1=3'b010;a0=3'b011;

end

4'b0010:

begin

a7=3'b111;a6=3'b111;a0=3'b111;a5=3'b000;a4=3'b001;a3=3'b010;a2=3'b010;a1=3'b011;

end

4'b0011:

begin

a7=3'b111;a1=3'b111;a0=3'b111;a6=3'b000;a5=3'b001;a4=3'b010;a3=3'b010;a2=3'b011;

end

4'b0100:

begin

a7=3'b000;a6=3'b001;a5=3'b010;a4=3'b010;a3=3'b011;a2=3'b111;a1=3'b111;a0=3'b111;

end

4'b0101:

begin

a7=3'b111;a6=3'b111;a5=3'b111;a4=3'b111;a3=3'b111;a2=3'b111;a1=3'b111;a0=3'b000;

end

4'b0110:

begin

a7=3'b111;a6=3'b111;a5=3'b111;a4=3'b111;a3=3'b111;a2=3'b111;a1=3'b000;a0=3'b001;

end

4'b0111:

begin

a7=3'b111;a6=3'b111;a5=3'b111;a4=3'b111;a3=3'b111;a2=3'b000;a1=3'b001;a0=3'b010;

end

4'b1000:

begin

a7=3'b111;a6=3'b111;a5=3'b111;a4=3'b111;a3=3'b000;a2=3'b001;a1=3'b010;a0=3'b010;

end

default:

begin

a7=3'b111;a6=3'b111;a5=3'b111;a4=3'b111;a3=3'b111;a2=3'b111;a1=3'b111;a0=3'b111;

end

endcase

endmodule


module top(a,ENX);

input[2:0]a;

output[6:0]ENX;

reg[6:0]ENX;

 always@(a)

  case(a)

3'b000:ENX=7'b0001001;

3'b001:ENX=7'b0000110;

3'b010:ENX=7'b1000111;

3'b011:ENX=7'b1000000;

default:ENX=7'b1111111;

endcase

endmodule


module wyt2(clk,rst,ENX7,ENX6,ENX5,ENX4,ENX3,ENX2,ENX1,ENX0);

input clk,rst;

output [6:0]ENX7,ENX6,ENX5,ENX4,ENX3,ENX2,ENX1,ENX0;

div u0(clk,clkout);

counter u1(clkout,rst,cnt);

connect u2(cnt ,a7,a6,a5,a4,a3,a2,a1,a0);

top u3(a7,ENX7);

top u4(a6,ENX6);

top u5(a5,ENX5);

top u6(a4,ENX4);

top u7(a3,ENX3);

top u8(a2,ENX2);

top u9(a1,ENX1);

top u10(a0,ENX0);

endmodule

第一个模块是用来分频的,第二个是计数,第三个是用来赋值的,把各个数对应的a赋过去,第四个是控制显示频的,第5个就是顶层模块



关键词: 入门     求助     代码     FPGA    

助工
2015-10-22 09:32:26     打赏
2楼
你这个代码编译应该是没错的,你遇到了什么问题呢?最好把自己遇到的问题现象描述一下

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]