这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » FPGA » 请教fpga中if...else 和case的区别

共2条 1/1 1 跳转至

请教fpga中if...else 和case的区别

菜鸟
2014-12-16 10:51:03     打赏
   //led_ctrl有1表示有按键按下
wire [2:0] led_ctrl = low_sw_r[2:0] & ( ~low_sw[2:0]);  
always @ (posedge clk or negedge rst_n)
begin
    if (!rst_n) 
		begin
					led_d1<=1;
					led_d2<=1;
					led_d3<=1;
					led_d4<=1;
		end
//------------------------------1--case-----------------------------------------------
	 else 
		 begin
			 case(led_ctrl)
			 3’b000: led_d4<=0;
			 3'b001:led_d1<=~led_d1;	
			 3'b010:led_d2<=~led_d2;
			 3'b100:led_d3<=~led_d3;
			 default:led_d4<=1;
			 endcase
		 end
	
   //------------------------2------if—else if----else---------------------------------------
	else if ( led_ctrl[0] )	 led_d1<=~led_d1;	//
        else if ( led_ctrl[1] )	 led_d2<=~led_d2;
        else if ( led_ctrl[2] )	 led_d3<=~led_d3;
	else		         led_d4<=~led_d4;

//----------------------------3------else------------------------------------------------------
       else
       begin
 		if ( led_ctrl[0] ) led_d1<=~led_d1;	
    	        if ( led_ctrl[1] ) led_d2<=~led_d2;
    	        if ( led_ctrl[2] ) led_d3<=~led_d3;
		
       end		
end		

 


菜鸟
2014-12-18 09:46:26     打赏
2楼

谢谢各位,还是多看点基础!


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]