FPGA数字IO如何实现DAC功能-FPGA常见问题论坛-FPGA CPLD-ChipDebug

FPGA数字IO如何实现DAC功能

图片[1]-FPGA数字IO如何实现DAC功能-FPGA常见问题论坛-FPGA CPLD-ChipDebug

方波时域与频域

c55272c9b2194855

    假设方波频率为f0。横轴谐波次数为0的柱状图代表直流分量的幅值,也就是方波的平均电压(与占空比有关),谐波次数为1代表频率为f0的正弦波分量的幅值,3代表,3*f0的正弦波分量幅值,以此类推。

可以看出,谐波只有奇数次的分量,1次谐波开始频率越高,幅值越低,对波形影响也就越小。

那么,此时如果此方波过一个低通滤波器,将1,3,5,7…次谐波通通滤掉会如何?

结果就会只有一个0次谐波,也就是0.5V(50%占空比)的直流分量。那么此时我们IO输出占空比变为40%,输出电压就是0.4V,占空比80%,输出就是0.8V,这不就实现了DAC的功能吗?

图片[1]-FPGA数字IO如何实现DAC功能-FPGA常见问题论坛-FPGA CPLD-ChipDebug

模拟滤波器

f7fa9828ef194907

二阶有源低通滤波器

2e7a0f04f4194917

贝塞尔滤波器

    除了上图的滤波器外,如果不追求精度,可以直接LC低通滤波器,简单实用,亲测有效。

图片[1]-FPGA数字IO如何实现DAC功能-FPGA常见问题论坛-FPGA CPLD-ChipDebug

Matlab分析方波频谱代码

 

请登录后发表评论