URL
https://opencores.org/ocsvn/csa/csa/trunk
[/] [csa/] [trunk/] [quartus10/] [ledseg_cnt.v] - Diff between revs 33 and 38
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 33 |
Rev 38 |
|
|
|
|
|
|
// this file control led segment controler module
|
// this file control led segment controler module
|
|
|
|
|
module ledseg_cnt(
|
module ledseg_cnt(
|
input clk // clock
|
input clk // clock
|
, input rst // reset , high active
|
, input rst // reset , high active
|
, input [15:0] data // the data want output at led segment
|
, input [15:0] data // the data want output at led segment
|
, output reg [ 3:0] seg // led segment scan signal
|
, output reg [ 3:0] seg // led segment scan signal
|
, output [ 7:0] segd // led segment output
|
, output [ 7:0] segd // led segment output
|
);
|
);
|
|
|
`define CNT_W 11 // count reg width
|
|
|
`define CNT_W 15 // count reg width
|
|
|
// interival variable
|
// interival variable
|
reg [`CNT_W-1:0] cnt;
|
reg [`CNT_W-1:0] cnt;
|
|
|
always @(posedge clk)
|
always @(posedge clk)
|
cnt<=cnt+11'h001; // up reg
|
cnt<=cnt+`CNT_W'h1; // up reg
|
|
|
reg h;
|
reg [3:0] h;
|
always @(cnt or data)
|
always @(cnt or data)
|
begin
|
begin
|
case (cnt[`CNT_W-1:`CNT_W-2])
|
case (cnt[`CNT_W-1:`CNT_W-2])
|
2'b00:h = data[15:12];
|
2'b00:h <= data[15:12];
|
2'b01:h = data[11: 8];
|
2'b01:h <= data[11: 8];
|
2'b10:h = data[7 : 4];
|
2'b10:h <= data[ 7: 4];
|
2'b11:h = data[3 : 0];
|
2'b11:h <= data[ 3: 0];
|
default:h = 4'hf;
|
|
endcase
|
endcase
|
end
|
end
|
|
|
always @(cnt)
|
always @(cnt)
|
begin
|
begin
|
case (cnt[`CNT_W-1:`CNT_W-2])
|
case (cnt[`CNT_W-1:`CNT_W-2])
|
2'b00:seg = 4'b1110;
|
2'b00:seg = 4'b1110;
|
2'b01:seg = 4'b1101;
|
2'b01:seg = 4'b1101;
|
2'b10:seg = 4'b1011;
|
2'b10:seg = 4'b1011;
|
2'b11:seg = 4'b0111;
|
2'b11:seg = 4'b0111;
|
default:seg = 4'hf;
|
|
endcase
|
endcase
|
end
|
end
|
|
|
hex2seg h2s(
|
hex2seg h2s(
|
.hex(h)
|
.hex(h)
|
, .seg(segd)
|
, .seg(segd)
|
);
|
);
|
|
|
|
|
endmodule
|
endmodule
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.