Étape 1: ADC
La mise en œuvre de l’ADC est très simple avec HAL Cube (mentionné dans la partie 1).
J’utilise 12 - bit ADC module
- Prédiviseur ADC = 8
- Nombre de conversion = 1
- Résolution de l’ADC = 128
- Temps d’échantillonnage est de 112 cycles.
Nous pouvons également utiliser des ADC avec DMA. Gestionnaire d’IRQ pour cela est HAL_DMA_IRQHandler(AdcHandle.DMA_Handle) , où AdcHandle est le type de ADC_HandleTypeDef.
Pour afficher la valeur de l’ADC on doit utiliser la valeur externe d’uint32t uhADCxConvertedValue. Il shpws valeur de 0 à 4096 (2 ^ 12) donc si nous voulons voir la tension de 0 - 3V il faut faire le calcul simple uhADCxConvertedValue * 30 / 4095 ;