名称:占空比可变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
阅读全文