 
										 
					
				
	流水灯作业
流水灯左流与右流,只要led左移或者右移就可以了。不具述。
如何用拨码开关控制左流与右流?
我加一个输入,sw1,进行管脚设置,在移位的位置先做一下判断,决定如何移位,如下,
if(!sw1)
 led<=led<<1;
else
 led<=led>>1;
可惜不成功,这是为什么?
	下面是源文件。
`timescale 1ns / 1ps
	module Led( sys_clk       ,
  sys_rstn      ,
  led       ,
  sw1
      );
//
input              sys_clk       ;
input              sys_rstn      ;
input              sw1   ;
output    [3:0]    led           ;
//
reg       [3:0]    led           ;
reg       [24:0]   delay_cnt     ;
//
always@(posedge sys_clk or negedge sys_rstn)
 begin
  if(!sys_rstn)
   delay_cnt<=25'd0;
  else if(delay_cnt==25'd14999999)
   delay_cnt<=25'd0;
  else
   delay_cnt<=delay_cnt+1'b1; 
 end
always@(posedge sys_clk or negedge sys_rstn)
 begin
  if(!sys_rstn)
   led<=4'b1111;
  else
   begin
    if(delay_cnt==25'd14999999)
     begin
      if(!sw1)
       led<=led<<1;
      else
       led<=led>>1;
      if(led==4'b0000)
       led<=4'b1111;
     end 
    else
     led<=led; 
   end
 end
endmodule
 
					
				
	跑马灯试验和作业
跑马灯的试验主要是学习移位寄存器。
完成。
下面的程序是用拨码开关控制马跑的方向的。
`timescale 1ns / 1ps
	module Led(  sys_clk       ,
       sys_rstn      ,
       led    ,
     sw1
       );
//
input              sys_clk       ;
input              sys_rstn      ;
input              sw1        ;
output    [3:0]    led           ;
//
reg       [3:0]    led           ;
reg       [24:0]   delay_cnt     ;
//
always@(posedge sys_clk or negedge sys_rstn)
 begin
  if(!sys_rstn)
   delay_cnt<=25'd0;
  else if(delay_cnt==25'd14999999)
   delay_cnt<=25'd0;
  else
   delay_cnt<=delay_cnt+1'b1; 
 end
always@(posedge sys_clk or negedge sys_rstn)
 begin
  if(!sys_rstn)
   led<=4'b0111;
  else
   begin
    if(delay_cnt==25'd14999999)
     begin
      if(!sw1)
       led<={led[0],led[3:1]};
      else
       led<={led[2:0],led[3]};
     end 
    else
     led<=led; 
   end
 end
endmodule
回复
| 有奖活动 | |
|---|---|
| 硬核工程师专属补给计划——填盲盒 | |
| “我踩过的那些坑”主题活动——第002期 | |
| 【EEPW电子工程师创研计划】技术变现通道已开启~ | |
| 发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
| 【EEPW在线】E起听工程师的声音! | |
| 高校联络员开始招募啦!有惊喜!! | |
| 【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
| 送您一块开发板,2025年“我要开发板活动”又开始了! | |

 
					
				 
			
			
			
						
			 
 我要赚赏金
 我要赚赏金 STM32
STM32 MCU
MCU 通讯及无线技术
通讯及无线技术 物联网技术
物联网技术 电子DIY
电子DIY 板卡试用
板卡试用 基础知识
基础知识 软件与操作系统
软件与操作系统 我爱生活
我爱生活 小e食堂
小e食堂

