Not creating an accurate low voltage using PWM


Even is only relative, rather than absolute, accuracy is requited.

The issue is working near oV – frequently even proper single-rail DACs get very soft near 0V, or have large dc offsets.

In a moment of inspiration, I though I had the answer with a low duty-cycle PWM followed by an RC filter and precision buffer.

The bubble was burst by the following moment of reality, involving remembering ground current. PWM bond wire conundrum

For, however good the output fets are, the output is never going to get closer to 0V that the microprocessor’s own current flowing through the bondwire resistance – plus the rest of the accumulated resistance between output fet source and 0V.

This is never going to be microvolts – even if the microcontroller is in sleep mode, any other I/O that sinks current will raise the voltage of the PWM output.

And a microcontroller in deep sleep with all its outputs set high is not going to be useful in many circumstances.

One way around the issue I can see is to put a CMOS gate or buffer in series with the PWM signal, and not use any other gates on the CMOS chip, and to be very careful about 0V connections.

I googled the subject, and found that other folk have discussed the same issues. There are some intelligent posts on the subject on this blog.


Source link

Leave a Reply