4 different numbers on Spartan3 starter kit

Status
Not open for further replies.

fallingrain_83

Junior Member level 1
Joined
Jul 24, 2005
Messages
19
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
USA
Activity points
1,450
7Segment display

Hi all
I am trying to display 4 different numbers on Spartan3 starter kit however I do not know why it is displaying just one number on all 4 7segments
I'm wondering if anyone can help me to find where I am wrong!!
Thanks
My all code is:





module segments4(clk,seg,select);
input clk;
output seg;
output select;
reg [0:7] seg;
reg [0:3] select;
reg [0:25] counter0;
reg [0:22] counter1;

reg [0:3] a;
reg [0:3] b;
reg [0:3] c;
integer i;
integer j;
integer k;
integer m;
always @ (posedge clk)
begin
counter0<=counter0 + 1;
counter1<=counter1 + 1;

if (counter0[0])

begin
counter0<=0;
if(i<15)
i=i+1;
if (counter1[0])

select <= 4'b1110;
display(i);


if(j>0)
j=j-1;
if (counter1[1])

select <= 4'b1101;
display (j);


if(k<15)
k=k+1;
if (counter1[2])

select <= 4'b1011;
display(k);


if(m<15)
m=m+1;
if (counter1[3])
select <= 4'b0111;
display (m);

end
end//always

task display;
input [0:3] num;
begin
case (num)
0: seg[0:7]<=8'b00000011;
1: seg[0:7]<=8'b10011111;
2: seg[0:7]<=8'b00100101;
3: seg[0:7]<=8'b00001101;
4: seg[0:7]<=8'b10011001;
5: seg[0:7]<=8'b01001001;
6: seg[0:7]<=8'b01000001;
7: seg[0:7]<=8'b00011111;
8: seg[0:7]<=8'b00000001;
9: seg[0:7]<=8'b00001001;
10: seg[0:7]<=8'b00010001;
11: seg[0:7]<=8'b11000001;
12: seg[0:7]<=8'b01100011;
13: seg[0:7]<=8'b10000101;
14: seg[0:7]<=8'b01100001;
15: seg[0:7]<=8'b01110001;
default seg[0:7]<= 8'b11111110;
endcase
end
endtask

initial
begin
counter0 = 0;
counter1 = 1;
j=15;
i=0;
k=1;
m=0;
end

endmodule
 

Status
Not open for further replies.

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…