📄 scan_led.v
字号:
module scan_led(clk_1k,d,dig,seg);
input clk_1k;
input[31:0] d;
output[7:0] dig;
output[7:0] seg;
reg[7:0] seg_r;
reg[7:0] dig_r;
reg[3:0] disp_dat;
reg[2:0] count;
assign dig=dig_r;
assign seg=seg_r;
always@(posedge clk_1k)
begin
count<=count+1'b1;
end
always@(posedge clk_1k)
begin
case(count)
3'd0:disp_dat=d[31:28];
3'd1:disp_dat=d[27:24];
3'd2:disp_dat=d[23:20];
3'd3:disp_dat=d[19:16];
3'd4:disp_dat=d[15:12];
3'd5:disp_dat=d[11:8];
3'd6:disp_dat=d[7:4];
3'd7:disp_dat=d[3:1];
endcase
case(count)
3'd0:dig_r=8'b01111111;
3'd1:dig_r=8'b10111111;
3'd2:dig_r=8'b11011111;
3'd3:dig_r=8'b11101111;
3'd4:dig_r=8'b11110111;
3'd5:dig_r=8'b11111011;
3'd6:dig_r=8'b11111101;
3'd7:dig_r=8'b11111110;
endcase
end
always@(disp_dat)
begin
case(disp_dat)
4'h0:seg_r=8'hc0;
4'h1:seg_r=8'hf9;
4'h2:seg_r=8'ha4;
4'h3:seg_r=8'hb0;
4'h4:seg_r=8'h99;
4'h5:seg_r=8'h92;
4'h6:seg_r=8'h82;
4'h7:seg_r=8'hf8;
4'h8:seg_r=8'h80;
4'h9:seg_r=8'h90;
4'ha:seg_r=8'h88;
4'hb:seg_r=8'h83;
4'hc:seg_r=8'hc6;
4'hd:seg_r=8'ha1;
4'he:seg_r=8'h86;
4'hf:seg_r=8'h8e;
endcase
end
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -