AnsweredAssumed Answered

Sinewave amplitude on DAC supposed to be 3.3V, only reaches 2.64V

Question asked by Antoine.PM on Jul 12, 2016
Latest reply on Jul 13, 2016 by Antoine.PM

I have a code that generates a sinewave by reading an array and putting it in the DAC, and it works pretty well, except for one detail: the amplitude I read on the oscillo is 2.64V, but won't go any higher.
The array has the value 4095 in it, which corresponds to an output of 3.3V.
I checked the DOR register (Data Output Register), and it does read the value 0x0FFF.
I divided all the values by 2, and the amplitude went to 1.32V, so it's proportional.

I usually use this function with:
- 32 samples
- 960 kHz timebase, for a 30 kHz sine

When I use a much lower frequency (3 kHz sine frequency), I have 3.16V as amplitude, but it is too low for what I want to do.

The DAC update rate is 1 Msps, and I'm pretty sure I meet the other requirements.

Essentially, how is it possible to lose informations between the DOR and the analog conversion (0x0FFF in the DOR, but not on the oscillo) ?