我有一个4位输出数作为输出。如何在七段显示器上看到十六进制数?我是新人,并提到了verilog。所以,我有一个四位二进制数,并希望将其显示为十六进制。防爆。 1010(10)为A
案例:
wire [3:0] num;
case (num)
4'b0000 : 1111110;
4'b0001 : 0110000;
4'b0010 : 1101101;
4'b0011 : 1111001;
so on
.
.
4'b1111 : 1000111;
endcase
4位二进制到七段
#TABLE: x1,x2,x3,x4 => a,b,c,d,e,f,g
0000 => 1111110
0001 => 0110000
0010 => 1101101
0011 => 1111001
0100 => 0110011
0101 => 1011011
0110 => 1011111
0111 => 1110000
1000 => 1111111
1001 => 1111011
1010 => 1110111
1011 => 0011111
1100 => 1001110
1101 => 0111101
1110 => 1001111
1111 => 1000111
答案 0 :(得分:1)
在Verilog中,如果没有定义数字的基本类型,它将假定为十进制。例如:10是十进制十而不是二进制二。应在always块中定义case语句。
reg [6:0] led;
wire [3:0] num;
always @* begin
case (num)
4'b0000 : led = 7'b1111110;
/* you fill in the rest */
4'b1111 : led = 7'b1000111;
endcase
end