Skip to main content
Were-Rabbit
Associate II
August 3, 2018
Question

Unstable behavior SDADC STM32F373

  • August 3, 2018
  • 3 replies
  • 1381 views

For a 21-channel temperature measurement tool (NTCs) I use a STM32F373 ( SDADC1 + SDADC2 + SDADC3). I replaced a temperature sensor with a fixed resistor for these tests.

The behavior of the ADCs is different and reproducible after startup:

Good Case: The measured values are absolutely stable and correspond to the setpoint

Bad Case: The measured values are not stable and shift with a time constant of approx. 80 seconds. The behaviour of all 3 SDADCs are the same.

The SDADC is configured as follows:

- VREF 2.5V external (stable)

- Continuous Mode

- Single-ended zero-volt reference mode

- gain 1

- Injected conversion

- 9 channels

- DMA mode

Clock configuration:

- 12MHz oscillator on HSE

- PLL on, PLLMul 4

- SDADC Prescaler 32

The following has been tested without success:

- Single-ended offset mode

- Delays after power up

- Sysclk = HSE

- SDADC Prescaler Settings

Thanks Paul

    This topic has been closed for replies.

    3 replies

    waclawek.jan
    Super User
    August 3, 2018

    So when do you observe the "good case" and when the "bad case"?

    Were-Rabbit
    Associate II
    August 6, 2018

    Hi Jan,

    After starting up, the SDADC either works stable "good case" or with a drift "bad case". This behavior is maintained throughout the operating period. The chance that the SDADC works correctly is fifty-fifty. I suspect that the SDADC has a timing problem.

    Were-Rabbit
    Associate II
    August 6, 2018

    I have switched the Syclk to HSE and the ADC now provides reproducible values. The drift has dropped markedly but the jumps every 60 seconds is still noticeable. Does the processor perform additional automatic calibrations?