公众号:FPGA技术小开发
流水灯//serial_light
一组灯并且在控制系统的控制下按照设定的顺序和时间来发亮和熄灭。形成一定的视觉效果,常安装于店面和招牌上。流水灯控制原理为:三极管在电路中充当开关的作用,当电路导通,最左边的LED首先点亮。基极串出一电容连接下一个三极管的集电极。当电容充分充电后,下一个三极管导通使得第二个LED点亮,以此类推。可以通过调节电容的容量值,来控制流水灯点亮的时间。
驱动时钟:50MHz //clk
复位按键 //rst
以4个灯为例,让4个灯在不同的时间、不同的顺序亮起来实现流水灯的效果,需要有平台来统计每个灯的信息,包括顺序和时间。这个用来统计信息的平台叫做数据寄存器。
0.2秒之后灯的状态发生变化,即转移
源代码
module serial_light(
input clk,
input rst,
output reg [3:0] led
);
reg [24:0] count;
always@ (posedge clk or negedge rst)
begin
if(!rst)
count<=0;<