3.PWM信号发生器设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
•
实验内容
– – – – –
•
实训要求
– – –
•
自由发挥
– – – 设置PWM载波频率。 提高占空比的调节精度。 扩展一低通滤波器,滤除PWM的交流分量,留下直流分量测量其大小,并比较其直流 分量与占空比之间的关系。
2 华中科技大学 国家电工电子实验教学示范中心
第一期可编程逻辑设计培训研讨 2013年1月 湖北武汉
PWM信号发生器设计
第一期可编程逻辑设计培训研讨 2013年1月 湖北武汉
1
华中科技大学 国家电工电子实验教学示范中心
PWM信号发生器实验
• 任务目的
– – 理解PWM信号产生的机制。 熟悉时序约束与时序分析方法。 使用VerilogHDL,设计产生一个载波为40kHz,占空比从1%~99%可调的PWM信号。 编写按键驱动的VerilogHDL代码,实现对占空比的任意值设置或者步进调节,调节精度 均为1%。 编写数码管驱动的VerilogHDL代码,实现对占空比的实时显示。 采用ModelSim,仿真验证逻辑功能。 下载编程文件至EDP-CLPD扩展板,并用示波器观察运行结果。 进一步熟悉ModelSim仿真环境及其使用方法。 按键处理需要考虑去抖。 记录测试结果并撰写实验报告。
PWM信号发生器实验
• PWM原理
锯齿波 x 待调信号
t x 调制输出
t
待调信号 1/fs 载波
比较器
NPWM
第一期可编程逻辑设计培训研讨 2013年1月 湖北武汉
3
华中科技大学 国家电工电子实验教学示范中心
PWM信号发生器实验
• PWM信号发生器的Verilog描述
– PWM精度:256级(0~255) – PWM输出频率:97.65625KHz
Simulate1的名称要与testbench的顶层文件同名
• 编译成功后,双击SIMULATE1 ,打开VIEW里的 WAVE,将想观察的信号拖入波形区域,打开仿真即 可观察波形。注意调整RUN LENGTH 时间,一般为 几us.
第二个实验 加入两个输入按键
• 编写并添加按键驱动和显示占空比的逻辑 • 下载至EDA-CPLD板上,并用示波器观察
第一期可编程逻辑设计培训研讨 2013年1月 湖北武汉 5 华中科技大学 国家电工电子实验教学示范中心
实验过程(自编)
• 直接在ModelSim ALTERA STARTER EDITION 6.5b 中进行编写、访真即可。 新建三个文件,
module pwm( input clk, input [7:0] data, output pwm ); reg [7:0] cnt; always@(posedge clk) begin cnt <= cnt + 1’b1; end always@(posedge clk) begin pwm <= (data > cnt); end endmodule
第一期可编程逻辑设计培训研讨 201ห้องสมุดไป่ตู้年1月 湖北武汉
4
华中科技大学 国家电工电子实验教学示范中心
PWM信号发生器实验
• *编写TestBench并在ModelSim中仿真
`timescale 1ns/1ps module testbench; reg clk; reg [7:0] data; wire pwm; initial begin clk = 1'b1; data = 8'd0; pwm_inst.cnt = 1'b0; #100000 data = 8'd32; #100000 data = 8'd64; #100000 data = 8'd128; #100000 data = 8'd160; #100000 data = 8'd192; #100000 data = 8'd224; #100000 data = 8'd255; #100000 $stop(); end always begin #20 clk = ~clk; end pwm pwm_inst(.clk(clk), .data(data), .pwm(pwm)); endmodule