基础知识
- 直插式LED长脚为阳极,短脚为阴极;贴片式LED有标记的一端为阴极。
- 发光二极管在5mA左右就可以发光,一般控制其电流为3~20mA。
实验目的
使开发板上四个LED交替闪烁,实现流水灯效果。
硬件设计
![image.png](/uploads/projects/zhj0125@fpga/af32760544c0750093e4c0980082ed55.png)
![image.png](/uploads/projects/zhj0125@fpga/9ec1af5bd07c84001d85e3072607ac0e.png)
![image.png](/uploads/projects/zhj0125@fpga/96298df61bf983a6ae3a723bde515d75.png)
![image.png](/uploads/projects/zhj0125@fpga/1cbacabd97955f3260ba3f50b8d1894d.png)
module flow_led(
input clk,
input rst,
output reg [3:0] led
);
reg [23:0] counter;
parameter TIME = 24'd10_000_000; //0.2s
// counter 计数器0.2秒设置
always @(posedge clk or negedge rst) begin
if(!rst)
counter <= 24'd0;
else if(counter > TIME)
counter <= 24'd0;
else
counter <= counter + 1'b1;
end
// LED状态转化设置
always @(posedge clk or negedge rst) begin
if(!rst)
led <= 4'b0001;
else if(counter == TIME)
led[3:0] <= {led[2:0], led[3]};
else
led <= led;
end
endmodule