• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

占空比可变PWM波形发生器Verilog代码Quartus仿真

07/15 11:28
337
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240131134013293.doc

共1个文件

名称:占空比可变PWM波形发生器Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

1、输出PWM波;

2、PWM波的占空比可以自动从0%变到100%;

3、每隔2ms变化一次占空比,每次增加1%,最终变为100%。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图

部分代码展示:

//PWM实现在200ms内输出占空比由0到1的方波脉冲
module?PWM(
input?clk,//时钟,50KHz
input?reset,//复位,高电平有效
output?reg?PWM_out//输出方波脉冲
);
//每隔2ms变化一次占空比,每次增加1%,200ms变为100%
//计时2ms,clk=50K。计数100即2ms
reg?[7:0]?time_cnt=8'd0;
always@(posedge?clk?or?posedge?reset)
if(reset)
time_cnt<=8'd0;
else
if(time_cnt>=8'd99)//计数100;0~99
time_cnt<=8'd0;
else
time_cnt<=time_cnt+8'd1;//计时
//占空比计数器
reg?[7:0]?count=8'd1;
always@(posedge?clk?or?posedge?reset)
if(reset)
count<=8'd1;
else?if(time_cnt>=8'd99)//每2ms变化一次
if(count>=8'd100)//计数1%~100%
count<=8'd100;//保持100%占空比
else
count<=count+8'd1;//累加
//pwm周期计数器,计数100
reg?[7:0]?count_duty=8'd0;

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=646

  • 2-240131134013293.doc
    下载

相关推荐