Skip to main content
ayaki
Associate II
May 13, 2019
Solved

ADC resolution can not reach to 16bits. ıs there any analogue reference design?

  • May 13, 2019
  • 5 replies
  • 2350 views

We are using ST32H743BI in an our project because of it having 3 of 16bits ADCs. But we can not reach resolution that project needed. I checked a simple project "STM32Cube_FW_H7_V1.3.0\Projects\STM32H743ZI-Nucleo\Examples\ADC\ADC_OverSampler" on NUCLEO demoboard. It gives good results for over-sampling value 1024. But we need 250 Ksmps for each channels so the best result I reached is;

for parameters;

AdcHandle.Init.Oversampling.Ratio         = 3;

AdcHandle.Init.Oversampling.RightBitShift     = ADC_RIGHTBITSHIFT_2;

sConfig.SamplingTime = ADC_SAMPLETIME_16CYCLES_5;

results;

Average value = 11

Minimum value = 0

Maximum value = 188

it means we can reach maximum 13bits resolution. I want to know do we have to accept these values normal or is there any better analogue design methods ? May be ST published some analogue reference design papers for ST32 family microcontrollers.

This topic has been closed for replies.
Best answer by Bob S

Are you familiar with the term ENOB (effective number of bits)? Look in the ST32H743BI data sheet: ENOB is 12 bits max for single-ended measurements, and 13.5 bits max for differential measurements. When working with ADCs you need to know more than just the resolution of the converter. System noise, internal noise, distortion all play a role and work against the ideal resolution. Those values in the data sheet are (I presume) measured in a test fixture with an "as ideal as possible" external drive circuitry, grounding scheme, etc.

5 replies

Uwe Bonnes
Chief
May 13, 2019

Testing ADC with VIN near ground is not good idea. There is ADC offset and clipping. You need excellent grounf, Vref and a strong driver. Perhaps have a look at the ADC input of the STM32H7 eval boards fir some "reference" design.

ayaki
ayakiAuthor
Associate II
May 14, 2019

I got same results for high and mid values. There is no change. For other microcontroller brands we used like NXP and Microchip, we could always find analogue reference designs and PCB drawing suggestions.

Tesla DeLorean
Guru
May 13, 2019

The process used for high speed micro-controllers isn't super conducive to high quality/performance ADC, consider using external ADC or CODEC which meet your actual requirements, and interface those.

>>May be ST published some analogue reference design papers for ST32 family microcontrollers.

They might have FAE's too, try having the one responsible for your account provide some design assistance/review.

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
ayaki
ayakiAuthor
Associate II
May 14, 2019

There is 84 analogue channels over multiplexers to read and minimum 3 ADCs needed so using external ADCs will be very expensive solution. If ST32H743BI can not reach true 16bits resolution, why they declared as? does this fake advertising?

flyer31
Senior
May 17, 2019

Can you get "real" 16bit ADC resolution for Microchip or NXP controllers, if you use their reference designs?

13bit already sounds pretty nice for such an MCU device I think.

Do you get the 13bits for "single measurement point stability", or after arithmetic rounding over many measurements?

ayaki
ayakiAuthor
Associate II
May 31, 2019

They don't have microcontroller that has 16bits ADCs

Bob S
Bob SBest answer
Super User
May 17, 2019

Are you familiar with the term ENOB (effective number of bits)? Look in the ST32H743BI data sheet: ENOB is 12 bits max for single-ended measurements, and 13.5 bits max for differential measurements. When working with ADCs you need to know more than just the resolution of the converter. System noise, internal noise, distortion all play a role and work against the ideal resolution. Those values in the data sheet are (I presume) measured in a test fixture with an "as ideal as possible" external drive circuitry, grounding scheme, etc.

ayaki
ayakiAuthor
Associate II
May 31, 2019

Thank you very much for your information. I did not read ENOB values. The given values for 2MSPS conversations but we are using 500 KSPS so the values must be better. However, we should not expect 16 bits resolutions.