STM32F7 Discovery Board ADC Programming

Published by on

STM32F7 Discovery Board have 3 ADC on board and each ADC is 12-bit ADC. The 12-bit ADC is a successive approximation analog-to-digital converter. It has up to 19 multiplexed channels allowing it to measure signals from 16 external sources, two internal sources, and the VBAT channel. The A/D conversion of the channels can be performed in single, continuous, scan or discontinuous mode. The result of the ADC is stored into a left or right-aligned 16-bit data register.

The analog watchdog feature allows the application to detect if the input voltage goes beyond the user-defined, higher or lower thresholds.


ADC have so many features some of them is mentioned below

ADC main features

• 12-bit, 10-bit, 8-bit or 6-bit configurable resolution
• Interrupt generation at the end of conversion, end of injected conversion, and in case of analog watchdog or overrun events
• Single and continuous conversion modes
• Scan mode for automatic conversion of channel 0 to channel ‘n’
• Data alignment with in-built data coherency
• Channel-wise programmable sampling time
• External trigger option with configurable polarity for both regular and injected conversions
• Discontinuous mode
• Dual/Triple mode (on devices with 2 ADCs or more)
• Configurable DMA data storage in Dual/Triple ADC mode
• Configurable delay between conversions in Dual/Triple interleaved mode
• ADC supply requirements: 2.4 V to 3.6 V at full speed and down to 1.8 V at slower
• ADC input range: VREF– ≤ VIN ≤ VREF+
• DMA request generation during regular channel conversion

ADC1, ADC2 and ADC3 are tightly coupled and share some external channels as described


Channel selection

There are 16 multiplexed channels. It is possible to organize the conversions in two groups:

regular and injected. A group consists of a sequence of conversions that can be done on any channel and in any order. For instance, it is possible to implement the conversion sequence in the following order: ADC_IN3, ADC_IN8, ADC_IN2, ADC_IN2, ADC_IN0, ADC_IN2, ADC_IN2, ADC_IN15.


Leave a Reply

Avatar placeholder