📄 led_decoder.v
字号:
/*
segment = "g f e d c b a"
Example: 0 => "100000" (turning off g)
a
----
f| |b
| g |
----
e| |c
| d |
----
*/
module led_decoder(reset_n, led_in, led_out, enable);
input reset_n;
input[7:0] led_in;
input enable;
output [6:0] led_out;
reg [6:0] led_out;
always @(enable or led_in or reset_n)
begin
if (!reset_n)
led_out = 7'h47;
else
begin
if (enable)
begin
case(led_in)
8'h00 : led_out = 7'h40; // 0
8'h01 : led_out = 7'h79; // 1
8'h02 : led_out = 7'h24; // 2
8'h03 : led_out = 7'h30; // 3
8'h04 : led_out = 7'h19; // 4
8'h05 : led_out = 7'h12; // 5
8'h06 : led_out = 7'h02; // 6
8'h07 : led_out = 7'h78; // 7
8'h08 : led_out = 7'h00; // 8
8'h09 : led_out = 7'h10; // 9
8'h0A : led_out = 7'h08; // A
8'h0B : led_out = 7'h03; // B
8'h0C : led_out = 7'h46; // C
8'h0D : led_out = 7'h21; // D
8'h0E : led_out = 7'h06; // E
8'h0F : led_out = 7'h0E; // F
8'hFE : led_out = 7'hFE;
8'hFD : led_out = 7'hFD;
8'hFB : led_out = 7'hFB;
8'hF7 : led_out = 7'hF7;
8'hEF : led_out = 7'hEF;
8'hDF : led_out = 7'hDF;
default: led_out = led_out;
endcase
end
else
led_out = led_out;
end
end
/*
always @(ascii_in)
begin
case(ascii_in)
8'h30 : led_out = 7'h40; // 0
8'h31 : led_out = 7'h79; // 1
8'h32 : led_out = 7'h24; // 2
8'h33 : led_out = 7'h30; // 3
8'h34 : led_out = 7'h19; // 4
8'h35 : led_out = 7'h12; // 5
8'h36 : led_out = 7'h02; // 6
8'h37 : led_out = 7'h78; // 7
8'h38 : led_out = 7'h00; // 8
8'h39 : led_out = 7'h10; // 9
8'h41 : led_out = 7'h08; // A
8'h42 : led_out = 7'h03; // B
8'h43 : led_out = 7'h46; // C
8'h44 : led_out = 7'h21; // D
8'h45 : led_out = 7'h06; // E
8'h46 : led_out = 7'h0E; // F
8'h47 : led_out = 7'h02; // G
8'h48 : led_out = 7'h0B; // H
8'h49 : led_out = 7'h6F; // I
8'h4A : led_out = 7'h81; // J
8'h4B : led_out = 7'h09; // K
8'h4C : led_out = 7'h48; // L
8'h4D : led_out = 7'h3F; // Mx => -
8'h4E : led_out = 7'h2B; // N
8'h4F : led_out = 7'h40; // O
8'h50 : led_out = 7'h0C; // P
8'h51 : led_out = 7'h3F; // Qx => -
8'h52 : led_out = 7'h2F; // R
8'h53 : led_out = 7'h12; // S
8'h54 : led_out = 7'h08; // T
8'h55 : led_out = 7'h63; // U
8'h56 : led_out = 7'h3F; // Vx => -
8'h57 : led_out = 7'h3F; // Wx => -
8'h58 : led_out = 7'h3F; // X => -
8'h59 : led_out = 7'h11; // Y
8'h5A : led_out = 7'h24; // Z
8'h60 : led_out = 7'h08; // a
8'h61 : led_out = 7'h03; // b
8'h62 : led_out = 7'h46; // c
8'h63 : led_out = 7'h21; // d
8'h64 : led_out = 7'h06; // e
8'h65 : led_out = 7'h0E; // f
8'h66 : led_out = 7'h02; // g
8'h67 : led_out = 7'h0B; // h
8'h68 : led_out = 7'h6F; // i
8'h69 : led_out = 7'h81; // j
8'h6A : led_out = 7'h09; // k
8'h6B : led_out = 7'h48; // l
8'h6C : led_out = 7'h3F; // m -
8'h6D : led_out = 7'h2B; // n
8'h6E : led_out = 7'h40; // o
8'h6F : led_out = 7'h0C; // p
8'h71 : led_out = 7'h3F; // q -
8'h72 : led_out = 7'h2F; // r
8'h73 : led_out = 7'h12; // s
8'h74 : led_out = 7'h08; // t
8'h75 : led_out = 7'h63; // u
8'h76 : led_out = 7'h3F; // v -
8'h77 : led_out = 7'h3F; // w -
8'h78 : led_out = 7'h3F; // x -
8'h79 : led_out = 7'h11; // y
8'h7A : led_out = 7'h24; // z
default: led_out = 7'h7F; // off
endcase
end
*/
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -