小浪鱼 发表于 2019-9-25 10:55 你好。我也有同样的问题。我在 lm358 输出端测量 0.65v。你找到解决这个问题的方法了吗?请提供资料 |
是不是频率太高了,你换一下低频试一下 |
hhh402 发表于 2019-9-25 11:43 感谢回复,单片机用的是stm32f103c8t6(pwm输出频率为280k HZ左右),pwm分辨率为8位.我换一个运放试一下。 |
小浪鱼 发表于 2019-9-25 10:55 没有使用过XTR111,不了解XTR111输入特性。有可能XTR111的VIN端口悬浮电压高于5V。LM358输出阻抗很低,输出电压一般不会受负载影响,除非LM358内部输出管进入非线性区。建议LM358电源电压也用24V试试。 |
滤波电容取值不对,换成104或105,lm358输入偏置电流太大不适合做小电流的电压跟随,换成082运放,你的PWM不会用16位的吧,改用8位的,pwm频率越大输出的电压文波越小,频率至少要3kHZ。楼主对硬件不是很了解选型有问题,用PWM做DA对硬件要求是比较高的,要用高主频的单片机(89c52不行),PWM用10位以下的(16位最好不用),运放需要选偏置电流小的(lm358不行)。 |
cuihaodianzi 发表于 2019-9-24 17:34 感谢你的回复,我自己加过lm358(5V单电源供电)做电压跟随器。电压跟随没问题,但是输出接到XTR111时lm358输出电压就会变化。而且当pwmdac模拟 0V电压时,RC滤波电路输出一直有0.3V左右的电压消除不了。求解,谢谢。 |
wulin 发表于 2019-9-24 16:52 你好,感谢你的回复。pwm输出引脚已经设置成了复用推挽输出,电压跟随器使用的lm358(单电源5v供电),实际测量时,RC二阶滤波后的电压值越输出引脚电压相差不大,经过电压跟随器后电压也没变。但是一旦把lm358输出接入XTR111后,358输出的电压就变了(增加了0.8V).求解答,谢谢。 |
加个电压跟随器隔离一下就可以 |
MCU的PWM输出端口需要设置为推挽输出,否则由于端口输出高或低电平时的内阻不同,导致滤波RC充放电时间常数不同,在滤波电容上无法获取正确的直流电压有效值。LM358跟随器输出电压范围0~VCC-1.5V,所以LM358的电源电压要高于最大输入电压1.5V以上才能正确反映输入电压。
![]() |