占空比可调的PWM波发生器设计Verilog代码Quartus ep1c3开发板

名称:占空比可调的PWM波发生器设计Verilog代码Quartus  ep1c3开发板

软件:Quartus

语言:Verilog

代码功能:

占空比可调的PWM波发生器

1、产生PWM波,可以通过按键调整占空比

2、使用2个按键,一个按键控制增加占空比,一个按键控制减小占空比

3、数码管显示占空比


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

本代码已在ep1c3开发板验证,ep1c3开发板如下,其他开发板可以修改管脚适配:ep1c3开发板.jpg

演示视频:

设计文档:

设计文档.doc

1. 工程文件


2. 程序文件


3. 程序编译


4. Rtl图


5. Testbench


6. 仿真图



模块仿真

按键模块





显示模块


Duty模块


Pwm模块


部分代码展示:

module PWM(
input clk_50M,//50MHz时钟
input key_add,//调节占空比按键,加
input key_sub,//调节占空比按键,减
output [5:0] PWM_LED,//PWM指示灯
output [3:0] weixuan,//数码管位选
output [7:0] duanxian//数码管段选
);
wire [6:0] duty_data;//占空比计数值
wire add_duty;
wire sub_duty;
wire PWM_wave;
//按键消抖模块
key_jitter add_key_jitter(
. clkin(clk_50M),    
. key_in(key_add),//输入
. key_negedge(add_duty),//消抖后按键下降沿
);
//按键消抖模块
key_jitter sub_key_jitter(
. clkin(clk_50M),    
. key_in(key_sub),//输入
. key_negedge(sub_duty),//消抖后按键下降沿
);
//占空比控制模块
duty_ctrl i_duty_ctrl(
. clk_50M(clk_50M),//50MHz时钟
. add_duty(add_duty),//调节占空比按键,加
. sub_duty(sub_duty),//调节占空比按键,减
. duty_data(duty_data)//占空比计数值
);
//PWM波控制模块
PWM_ctrl i_PWM_ctrl(
. clk_50M(clk_50M),//输入50MHz
. duty(duty_data),//占空比控制信号,最大100
. PWM_wave(PWM_wave)//输出PWM波
);

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 占空比可调的PWM波发生器设计Verilog代码Quartus ep1c3开发板

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员