怎么用verilog编写PWM,形成下面的波形,实际上就是三角波....

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么用verilog编写PWM,形成下面的波形,实际上就是三角波....相关的知识,希望对你有一定的参考价值。

参考技术A 用一个计数器,一个控制按键,在原理上就是按钮按一次,计数器的计数范围变化。
module PWM (
button,
pwm,
clk );
input button ;
output reg pwm ;
input clk ;
reg button_r ;
reg [7:0]delay;//按键消除抖动用延时
reg [7:0]count; //计数器
reg [7:0]temp; //脉宽设置
always@(posedge clk )
if(!button )
button_r<=1'b0;
else
if(delay==8'h00)
button_r<=1'b1;
else
delay<=delay+1'b1;

always@(posedge clk,negedge button_r)
if(!button_r)
temp<=temp+8'h10;
else
if(count==temp)
begin
count<=8'h0;
pwm<=~pwm;
end
else
count<=count+1'b1;

endmodule

差不多就这样,原理不变本回答被提问者采纳
参考技术B 用计数器计数,控制波形输出。电平越长,计数值越大,电平越短,计数值越小。

以上是关于怎么用verilog编写PWM,形成下面的波形,实际上就是三角波....的主要内容,如果未能解决你的问题,请参考以下文章

verilog编写可调PWM波形

请问verilog编写的PWM的死区怎么编写?

FPGA教程案例51控制案例3——基于FPGA的PWM波形产生verilog实现

用verilog设计频率和占空比可调pwm

Verilog直流电机的pwm控制设计

PWM信号经RC滤波之后得到这种波形怎么办?