Telechargé par morrocan.news007

zerouali

publicité
MCU
RAPPORT DE LA TACHE 6 :
Conversion Analogique Numérique
Encadré par : Mr ROLLAND Alexis

ZEROUALI Abdelhakim.

KANE Mamadou.
Année universitaire : 2020/2021
But de la manipulation :
- Le but de cette tâche est de bien maitriser la conversion analogique numérique, pour réaliser
cela il va faire appel théoriquement au notions d’échantillonnage et de quantification, et
surtout tout ce qui concerne la conversion Analogique Numérique et le fonctionnement global
d’un convertisseur AN, et de côté pratique savoir qu’est-ce un dévermineur et connaitre les
notions de point d’arrêt et de Watch.
On a commencé par l’étude de la première phase des travaux préliminaires :
Phase 1 :
Le nombre d’entrées analogiques disponible du PIC18F45K22 est de : 30 entrées analogiques,
et elle contient un seul convertisseur CAN.
Un registre important pour la configuration du convertisseur est le ADCON0, il contient deux
bits intéressants : GO/DONE et ADON ; le premier est pour configurer le début ou la fin de la
conversion comme suit :

GO/DONE  1 : Commencer la conversion.

GO/DONE  0 : Conversion completed.

Le bit ADON est pour activer la conversion.
Reference de l’alimentation :

Positive voltage : ADCON1 ; PVCFG<1:0>.

Negative voltage : ADCON1 ; NVCFG<1:0>.
Résultat de la conversion :
Registre ADCON2 en configurant soit sur 8 ou 10 bits en configurant le bit ADFM comme suit :

ADFM = 1 : right justified.

ADFM = 0 : left justified.
Mise en œuvre :
Pour cette phase, on a commencé par la préparation d’une application de test « T6_TEST1 » ou on a
configuré le CAN pour l’utilisation d’alimentation comme références, et la conversion de la ligne
analogique AN1 et le résultat sur 8 bits et avec un oscillateur primaire à 8Mhz, et effectuer la
conversion avec une attente active de la fin de conversion et stockage du résultat dans une variable
globale.
Après cette configuration on a utilisé le dévermineur pour confirmer le fonctionnement de notre
programme.
Ensuite on a passé d’un résultat du 8bits à un résultat de 10bits pour avoir plus de précision et avec
une stratégie de conversion AN n’utilisant pas d’attente active ; on a fait appel alors à un
programme d’interruption ; avec un résultat de type uint16_t et une variable globale « convok »
pour avoir un programme d’interruption plus léger et l’appeler dans notre programme principal.
Le programme d’interruption est configuré comme suit :
Le programme principal débute par une mise à un de notre bit GO/DONE pour commencer la
conversion puis un test de convok pour effectuer une tache précise :
De même et en utilisant le dévermineur, Watch et le point d’arrêt ; on a validé le fonctionnement de
notre interruption.
Phase 2 :
La conversion AN est nécessaire pour notre « aide accordeur » afin de varier le volume.
Pour notre conversion il faut choisir une bonne fréquence d’échantillonnage (l’ordre des 100ms)
pour qu’elle ne soit pas trop et rapide pour l’utilisateur et pas trop lente pour la machine.
DFD0 partiel :
Conclusion :
- Pendant cette séance de TP et au cours de la configuration de cette tache on a maitrisé au côté
théorique le fonctionnement d’un convertisseur et ces différentes applications, d’un autre coté on a
bien touché pratiquement des stratégies pour développer notre programme et éviter les attentes
actives au cours de la conversion.
Téléchargement