Étape 4: Interface capteurs (AVR-ADC)
Données du monde réelles plus sont analogiques. Que ce soit la température, pression, tension, etc., leur variation est toujours analogique dans la nature. Tout cela est simplement analogique de données et nous devons traiter les données que nous avons reçues. Mais le traitement du signal analogique est tout à fait inefficace en termes de précision, de rapidité et de sortie désirée. Par conséquent, nous convertir au format numérique en utilisant un analogue au convertisseur numérique (ADC). L’AVR dispose d’ADC intégré dans presque tous ses MCU. Dans ATMEGA16, PORTA contient les broches de l’ADC. Maintenant, si vous avez plus d’une source de tension analogique, plus d’un capteur, par exemple, vous pouvez lire tous les tant que le nombre de sources est inférieur au nombre d’ADC pins vous ont sur votre microcontrôleur. Avec le Atmega16, il y a 8 broches de l’ADC. La seule chose à garder à l’esprit lorsque le connecteur Active Directory pour lire plusieurs canaux de programmation est que seul le canal peut être utilisée dans la conversion à la fois.
Dans ATMega16, vous avez juste besoin de changer de canal MUX et assigner des valeurs selon la feuille de données pour sélectionner les différent canaux d’ADC.
Voici comment c’est fait :
ADMUX – Registre de sélection multiplexeur ADC
MUX4:0 – Analog Channel et Bits de sélection Gain – là sont 8 canaux ADC (PA0... AP7).
Pour plus d’informations, voir fiche technique.
Maintenant depuis les capteurs analogiques seront donner des tensions analogiques donc selon les situations, vous devez savoir ce qui est la sortie du capteur de sorte que vous et peuvent effectuer des opérations respectives en conséquence.
Pour ce faire, il suffit de vérifier la tension de sortie du capteur à l’aide d’un multimètre et utiliser la formule pour le convertir en valeur adc ;
ADC = /V.out (V.input*1024)
Et vous allez maintenant être effectué avec des capteurs, si capteurs nécessite beaucoup d’essais et j’ai fait beaucoup de tests afin de garantir ce résultat après la programmation selon les valeurs que j’ai noté à l’aide d’un multimètre sont justes et précises.
Pour plus d’informations au sujet de l’ADC de programmation, consultez ce lien.