【原创】加减计数器——标志变量的用法(Verilog)
2010-08-22 21:11
316 查看
本博文主要目的是借用加减计数器来说明标志变量在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的应用)。
废话少说,贴代码如下:
(一)
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的应用)。
相关文章推荐
- 【原创】关于include用法的总结【Verilog】
- (原创)verilog2001中generate的精妙用法
- 【原创】关于generate用法的总结【Verilog】
- (原创)批处理中变量的用法
- Verilog语言“加减可控任意进制计数器”及“占空比50%的任意整数分频器”设计
- IOS外部变量(Extern)的用法
- PHP内置变量如$_SERVER['DOCUMENT_ROOT'] 和 ../ 的用法
- java中的final变量的用法
- C语言变量声明加冒号的用法 称为“位域”或“位段“
- [Craftor原创]基于Verilog的I2C总线驱动设计
- 原创 导弹能否摧毁目标?一个简单的例子说明c# 中property(性质)的用法
- MySQL自定义函数用法详解-复合结构自定义变量/流程控制--及其相关案例
- linux(4) vi编辑/删除、复制、粘贴 /bash shell 环境变量设置/数据流重定向 | 的用法
- verilog中的function用法与例子
- 【原创】在Ubuntu中设置环境变量PATH时遇到的问题
- 第一周第二天([变量名] [运算符] [语句] [求水仙花数的算法][求一个十进制数转换成二进制数有多少个1的算法] [continue的用法])
- shell脚本结构、date命令、变量 shell脚本中的逻辑判断 文件目录属性判断 if特殊用法 case判断
- C/C++中static变量和static函数的用法
- MoveFileEx 的MOVEFILE_DELAY_UNTIL_REBOOT 标志的用法!
- verilog中的while的用法和例子