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

脉宽调制电路设计Verilog代码Quartus仿真

07/16 13:46
309
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-2401311023314c.doc

共1个文件

名称:脉宽调制电路设计Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

脉宽调制电路设计。

内容及要求:

脉宽调制电路

(1)脉宽可调;

(2)周期可调;

(3)使用实验室的开发箱或自备开发板完成设计;

(4)完成全部流程:设计规范文档、模块设计、代码输入、功能仿真、约束与综合、时序仿真、下载验证等。

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图

部分代码展示:

//脉宽调制电路设计
module?Pulse_width(
input?clk,//时钟
input?reset,//复位
input?[6:0]?width_set,//脉宽设置(0~100),占空比0%~100%
input?[9:0]?duty_set,//周期设置
output?reg?pulse//输出脉宽调制信号
);
reg?[9:0]?count=10'd0;//定义计数器
//周期控制
always@(posedge?clk?or?posedge?reset)
if(reset)
count<=10'd0;//复位
else
if(count>=duty_set)//duty_set控制周期,count计数到duty_set清零
count<=10'd0;
else
count<=count+10'd1;//计数
//脉宽控制
wire?[9:0]?width;
assign?width=duty_set*width_set/100;//计算脉冲宽度对应的计数值,周期乘以占空比
always@(posedge?clk?or?posedge?reset)
if(reset)
pulse<=0;//复位
else
if(count<=width)//width控制脉冲宽度,count计数小于等于到width输出高电平
pulse<=1;//输出高电平
else
pulse<=0;//输出低电平
endmodule

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

  • 2-2401311023314c.doc
    下载

相关推荐