找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6882|回复: 9
收起左侧

FPGA四路PWM脉冲频率与占空比可调控制Verilog HDL源码

[复制链接]
ID:262194 发表于 2019-1-12 20:04 | 显示全部楼层 |阅读模式
PWM详细设计方案
1.
     PWM简介:
脉冲宽度调制(PWM),是英文“PulseWidth Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
  脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶 体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。
  PWM控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点.由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一。
2.     PWM规格:
Xxx

3.     实现原理
通过一个计数器来实现输出信号的占空比要求,可以将duty_cycle分配到拨码开关上,LED分配到发光二极管上,然后调节拨码开关,即可看到LED的亮度发生变化.

4.     Verilog HDL源代码
Verilog HDL代码为:
always@(posedge sys_clk or negedge sys_rst_n) begin
        if (sys_rst_n ==1'b0) begin
            counter <= 16'b0;
        end
        else
            counter  <= counter + 16'b1;
end

always@(posedge sys_clk or negedge sys_rst_n) begin
        if (sys_rst_n ==1'b0) begin
            pwm_out <= 8'b0;
        end
        else if (counter[15:12] <=duty_cycle)  
            pwm_out  <= 1'b1;
        else
            pwm_out  <= 1'b0;
end

assignled = pwm_out;

endmodule
//endof RTL code      
文末附上原创的四路PWM脉冲,频率占空比可调
0.png

全部资料51hei下载地址:
pwm_4ch.rar (1.38 MB, 下载次数: 134)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:89614 发表于 2019-2-13 15:25 | 显示全部楼层
谢谢分享!!!!!
回复

使用道具 举报

ID:485794 发表于 2019-3-6 19:42 | 显示全部楼层
感谢分享
回复

使用道具 举报

ID:529908 发表于 2019-5-7 19:17 | 显示全部楼层
好好学习下,感谢分享,
回复

使用道具 举报

ID:199880 发表于 2019-7-22 14:40 | 显示全部楼层
学习一下
回复

使用道具 举报

ID:619516 发表于 2019-10-5 16:33 | 显示全部楼层
学习,但是下载不下来,难受
回复

使用道具 举报

ID:799212 发表于 2020-7-7 17:36 | 显示全部楼层
搂主,能教一个输出2路pwm吗.频率,周期都2路都一样,用开发板的按键控制他们的频率和周期变化,
其中一路延时另一路的半个周期!
回复

使用道具 举报

ID:799212 发表于 2020-7-7 17:39 | 显示全部楼层
楼主可以教我们发出2路pwm(频率,周期一样)另一路延时半个周期触发
回复

使用道具 举报

ID:799212 发表于 2020-7-7 17:40 | 显示全部楼层
最好是用开放板按键控制其频率和周期
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表