Jump to content
  • 0

ADC bits and resolution


ssm

Question

Dear Help,

I am using SDK to program and read data using the scope of the AD2 board. I am using the function FDwfAnalogInStatusData16 to read in the raw ADC data and I have few questions:

- The mentioned function specifies 16 bits for the ADC, as in many questions and answers in this forum, the ADC is assumed to have 16 bits. In the board specs it says 14 bits. So the ADC 16 or 14 bits? 

- In the manual it says the function FDwfAnalogInChannelRangeSet sets the voltage range. It is not clear to me how the range is set. The specs of the board says in can cover 50Vp-p, if I set the range to 1V, i.e. FDwfAnalogInChannelRangeSet(hdwf, -1, 1)does that mean the 16 bits of the ADC will cover the -1 to +1 V, 2^16 will be equivalent to 2Vp-p?

- when I use the FDwfAnalogInStatusData16, why I always get zeros in the 2 least significant bits or all values are multiple of 4? is that related to the value I am reading? i.e. the value I am reading is not small enough to change the first and second bits? but even if I assume that the value is not large enough, I never get one in the least significant bits. Any elaboration here would be very helpful.

thank you for the help,

stay safe, stay healthy,

ssm

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

Hi @ssm

The AD2 14bit ADC data are MSB aligned in the 16bit sample format.
To convert it to voltage value use range and offset returned by the Get functions. These represent the calibrated peak to peak input range and offset.
The range will be somewhat above 5Vpk2pk or 50Vpk2pk, like 5.2345 or 54.12345
The offset also has a calibrated resolution of about 0.3mV or 3mV

image.png.6b45b22e500d859960b830a4aac5a79c.png

Link to comment
Share on other sites

Dear Attila,

Assume I used the following function to set the range to 0.1V:

FDwfAnalogInChannelRangeSet(hdwf, -1, 0.1);

when I do a read 

FDwfAnalogInChannelRangeGet(hdwf, 0, &pvoltsRangeC0);

The range I get is 5.6V, is this normal? so the only Range values I can use are either 5.6 or 54 like you said right? I cannot pick arbitrary range values?

thank you for your support

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...