Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

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

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top