hclmcu

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

本博文主要目的是借用加减计数器来说明标志变量在Verilog编程过程当中的作用和用法,是自己在编程当中的随笔,写的很浅薄,欢迎各位博友拍砖~~(如需转载,请注明出处)

废话少说,贴代码如下:

(一)

always @ (posedge clk)
begin
 if(count==8'd255)
  flag<=1'b1;
 if(count==8'd0)
  flag<=1'b0;
end

always @ (posedge clk)
begin
 if(flag==1)
  count<=count-1'b1;
 else 
  count<=count+1'b1;
end

对代码作如下说明:本例是以计数器(count)满值为255的加减计数器为例,来说明标志变量(flag)的作用。

(二)再帖个产生不同占空比方波的小程序

always @ (posedge clk)
  begin
  wave_count<=wave_count+1'b1;
  end

always @ (posedge clk)
  begin
  if(wave_count > B) 
   flag<=1'b1;
  else
   flag<=1'b0;  
  end    
  always @ (flag)
  begin
  if(flag==1)
   square<=1'b0;
  else
   square<=1'b1;
  end

代码说明: 产生的方波的一个周期内是256个点,B是一个周期内处于高电平的点数,

通过控制B的大小就可以实现输出不同占空比的方波(注意flag的应用)。

posted on 2010-08-22 21:11  hclmcu  阅读(1310)  评论(0编辑  收藏  举报