In this tutorial, we’ll discuss the STM32 ADC (Analog-To-Digital Converter) module. Starting with an introduction for the ADC as a digital circuit and then shifting the attention to the STM32 ADC hardware and its features. We’ll get into the functional description for the ADC in STM32 microcontrollers, how it works, and how to configure it and make the best use of it. And let’s get right into it!
An ADC (Analog-To-Digital) converter is an electronic circuit that takes in an analog voltage as input and converts it into digital data, a value that represents the voltage level in binary code. The ADC samples the analog input whenever you trigger it to start conversion. And it performs a process called quantization so as to decide on the voltage level and its binary code that gets pushed in the output register.The ADC does the counter operation that of a DAC, while an ADC (A/D) converts analog voltage to digital data the DAC (D/A) converts digital numbers to the analog voltage on the output pin.The ADC is one of the most expensive electronic components especially when it does have a high sampling rate and high resolution. Therefore, it’s a valuable resource in microcontrollers and different manufacturers provide us (the firmware engineers) with various features so as to make the best use of it. And the flexibility also to make a lot of decisions like sacrificing resolution in exchange for a higher resolution or having the ADC to trigger on an internal timer signal to periodically sample the analog channels, and much more as we’ll see in this tutorial.
For those who like to have a solid introduction in ADC, how it works at the low level, different types of ADCs, ADC errors, equations, and all other details. The ADC Tutorial down below is a complete introductory guide for this topic and highly recommended.The STM32F103C8 (Blue Pill) & STM32F432KC have a 12-bit ADC which is a successive approximation analog-to-digital converter. It has up to 18 multiplexed channels allowing it to measure signals from sixteen external and two internal sources. A/D conversion of the various channels can be performed in single, continuous, scan, or discontinuous mode. The result of the ADC is stored in a left-aligned or right-aligned 16-bit data register.
The analog watchdog feature allows the application to detect if the input voltage goes outside the user-defined high or low thresholds. The ADC input clock is generated from the PCLK2 clock divided by a Prescaler and it must not exceed 14 MHz.
4. Le STM32 est un type de
microcontrôleur très courant
utilisé dans de nombreux
types d'appareils.
Il fournit également des
possibilités de liaison avec
d'autres types de
microcontrôleurs.
6. • La famille STM32 est une série
de microcontrôleurs 32-bits en circuits
intégrés réalisés par la société Franco-
Italienne STMicroelectronics. Les puces
STM32 sont regroupées dans différentes
séries proches, basées sur les processeurs
d'architecture ARM 32-bits, tels que
le Cortex-M7F, le Cortex-M4F, le Cortex-M3...
Chaque microcontrôleur est constitué d'un
cœur de calcul, de mémoire vive (RAM)
statique, de mémoire flash (pour le stockage),
d'une interface de débogage et de différents
périphériques .
8. • De manière générale, le mot convertisseur est employé pour
désigner une personne, un dispositif ou un objet dont le rôle est
de convertir, une chose en une autre, ou l'état d'une personne
en un autre.
Un transformateur (transformer : changer de forme) agit sur une
source d'énergie (qui se consomme) pour libérer l'énergie
contenue.
9. • En particulier, le mot est employé dans les contextes suivants :
• en hydraulique, un convertisseur de couple permet de transmettre un couple avec
certains avantages et certains inconvénients ;
• en électronique :
• un convertisseur analogique-numérique effectue la numérisation d'un signal
électrique,
• un convertisseur numérique-analogique transforme une donnée numérique en
grandeur électrique ;
• en radioélectricité, un convertisseur à arc désigne un émetteur à arc d'ondes
radioélectriques entretenues ;
• en métallurgie, un convertisseur est un four utilisé pour l'affinage des métaux en
fusion ;
• en informatique, un convertisseur est un logiciel modifiant le format de données en
affectant le moins possible leur utilisation finale
11. • Un convertisseur analogique-numérique (CAN, ou en
anglais ADC pour Analog to Digital Converter) est un
dispositif électronique dont la fonction est de traduire une
grandeur analogique en une valeur numérique codée sur
plusieurs bits. Le signal converti est généralement
une tension électrique.
12. • Le résultat de la conversion s'obtient par la formule :
Q=(2^n)*(Ve Vref) où Q est le résultat de Conversion, Ve, la
tension à convertir, n le nombre de bits du convertisseur et Vref
la tension de référence de la mesure.
13. • Le microcontrôleur STM32F446RE
possède notamment:
-3 convertisseurs A/N 12bits à 16 canaux
-1 convertisseur N/A 12 bits à 2 canaux
15. • L'ADC 12 bits du STM32 est un
convertisseur analogique-numérique
à approximations successives. Il a
jusqu'à 19 canaux multiplexés lui
permettant de mesurer les signaux de
16 sources externes et de 3
sources internes. La conversion A / N
des différents canaux peut être
effectuée en mode simple, continu,
balayage . Le résultat de l'ADC est
stocké dans un registre 16 bits.
17. Les
caractéristiques
d’un adc :
1-Résolution : Pour un ADC à N bits, le nombre
d’états possibles en sortie est 2^N , ce qui
permet d’exprimer des signaux numériques de 0 à
2^N-1 en code binaire naturel.
2-Temps de conversion
3- Erreur de Quantification : l’incertitude du a
la conversion
4-Pleine Echelle : Un ADC est caractérisé
également par la plage de variation acceptable de
la tension analogique d’entrée, appelée Pleine
Echelle
18. Les étapes de la conversion
:
1/ échantillonnage :
-La fréquence d'échantillonnage est le
nombre d'échantillons par unité de
temps. Si l'unité de temps est la
seconde, la fréquence
d'échantillonnage s'exprime en hertz
et représente le nombre d'échantillons
utilisés par seconde.
19. 2/ quantification :
C’est le procédé qui permet d’approcher un signal continu par les
valeurs d’un ensemble discret d’assez petite taille .
On peut définir le pas de quantification (ou quantum) , égal a la
valeur maximale de la tension échantillonnée sur le nombre N de
niveaux de quantification.
plus le nombre de bits utilisés pour la quantification du signal
est grand plus la numérisation est précise .
20. 3/codage :
Le codage du signal
consiste a représenter les 1
et les 0 d’un signal
numerique .
22. • L'horloge ADCCLK :
• l’horloge ADCCLK du convertisseur
est synchrone avec celle du bus
APB2, l’horloge PCLK2 Il est
possible de programmer un
prediviseur, par rapport `a PCLK2,
pour l’horloge ADCCLK dans le
contrôleur RCC.
24. • technologie SAR : Registre à
Approximations Successives:
Le SAR ADC effectue les opérations
suivantes pour chaque échantillon.
• Le signal analogique est
échantillonné et conservé Pour
chaque bit, la logique SAR produit
un code binaire au CNA qui dépend
du bit en cours d'examen et des bits
précédents déjà approximés.
26. • Un convertisseur numérique-
analogique (CNA, en anglais, DAC Digital
to Analog Converter) est un composant
électronique dont la fonction est de
transformer une valeur numérique en une
valeur analogique proportionnelle à la
valeur numérique codée.
• Généralement la sortie du convertisseur
est une tension électrique, mais certains
convertisseurs ont une sortie en courant.
• N/A = Fréquence / Bits
27. Certain STM32 comme le STM32 L073RZ dispose d'un
Convertisseur Numérique Analogique 12 bits (Digital Analog
Converter ou DAC) et d’autres non ,
! Le STM32F411RE ne possède pas de DAC !
32. => Commencer la conversion
=> start the conversion in the
selected channel and keep
waiting till the conversion is
done
=>store the conversion value
Notre code :
33. Conclusion :
• ST et ARM poursuivent leur collaboration
en faveur de nouvelles technologies,
comme par exemple, avec la prise en
charge par ST de la plateforme d’ARM
pour les objets connectés mbed(TM) ,en
faisant en sorte que sa gamme de
systèmes de développement STM32
Nucleo et les écosystèmes logiciels
associés soient entièrement
compatibles.