FPGA之花样流水灯控制模块

例子:8个灯中,硬件控制其中1个LED灯以0.5秒的速度正向点亮一次,然后逆向点亮1次,并不断循环。主:系统时钟为50MHZ

分析:首先,信号:8个灯、系统时钟clk、需要时钟0.5秒;

           实现:系统时钟分频0.5秒模块。控制灯亮一个。

module div_25M(clk_50M,CLk_2HZ)
  input clk_50M;
  output CLK_2HZ;
  reg[23:0] count;
  reg CLK_2HZ;
parameter cnt=1.25e7;
always@(posedge clk_50M)
  begin
    if(count==cnt/2-1)
      count<=0;
      CLK_2HZ<=~CLK_2HZ;
   else
      count<=count+1;
 end
endmodule

   

上述为分频模块

module led_ctrol(rst,clk)
 input   clk,rst;
 output [7:0] led;
 reg flag;
 reg [7:0] led;
 always @(posedge clk)
  begin
  if(rst)
    led<=8'b00000001;
    flag<=0;
  else if(flag==0)
       led<=led<<1;
       if(led==8'b1000000)
         flag<=1;
   else  
       led<=led>>1;
       if()  
 
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值