Leer entrada analógica
/* ReadAnalogVoltage Lit une entrée analogique sur la broche 0, la convertit en tension, et imprime le résultat sur le moniteur série. La représentation graphique est disponible en utilisant le traceur série (menu Outils > Traceur série) Attachez la broche centrale d’un potentiomètre à la broche A0, et les broches extérieures au +5V et à la masse.*/// la routine de configuration s’exécute une fois lorsque vous appuyez sur reset:void setup() { // initialiser la communication série à 9600 bits par seconde : Serial. begin(9600);}/// la routine de boucle s’exécute en permanence:void loop() { // lire l’entrée sur la broche analogique 0 : int sensorValue = analogRead(A0) ; // convertir la lecture analogique (qui va de 0 à 1023) en une tension (0 à 5V) : float voltage = sensorValue * (5.0 / 1023.0) ; // imprimer la valeur lue : Serial.println(voltage);}
Ports arduino analogiques et numériques
Surbyte dit que l’instruction d’entrée le fait automatiquement. J’ai eu des problèmes et je les ai résolus en faisant le pinmode d’entrée. De plus, cela coûte beaucoup d’argent de le faire. Rien, une instruction. Alors pourquoi déclarer une broche de sortie. Cela ne s’appliquerait pas aux deux cas.
Dessinez à main levée, prenez une photo, téléchargez-la en tant que pièce jointe (uniquement en format .jpg .png) de moins de 2 Mo et, à l’aide des règles, modifiez-la pour l’afficher. Si vous ne savez pas comment faire, regardez à la fin de la partie complémentaire où je vous explique comment faire et je pense que je vous ai aussi dit en privé.
Au fait Tauro, et pour voir si ce sujet est clos. pinMode() sert à déclarer les entrées ou sorties numériques, pas analogiques. Lorsque analogRead(pin) est invoqué sur la broche, celle-ci est connectée à un circuit analogique avec un ADC pour lire sa valeur.
Je ne comprends pas ce qui se passe ici. Voltage = “dataADC80.02.0/1024.0”. Pour moi, je le ferais comme ceci (4.95/1024)*analogRead(input) = égal à la tension d’entrée du signal analogique. Cela vous donnera une tension d’entrée de 3,4 volts. Une fois que vous avez obtenu la tension du capteur, vous effectuez le calcul en fonction du capteur.
Qu’est-ce qu’une valeur analogique ?
Après ce tutoriel, vous pouvez approfondir ce sujet avec le cours Arduino, parfait pour apprendre de manière pratique à programmer en Arduino à partir de zéro. Vous pouvez dès à présent accéder à ce cours et à bien d’autres gratuitement grâce à la période d’essai de 15 jours que nous vous proposons en ce moment.
Pour donner un exemple, un capteur de température analogique tel que le LM35 augmenterait le niveau de tension atteignant la carte proportionnellement à la température. Cependant, un capteur numérique tel que le ds18b20 modifierait la séquence d’impulsions et donc le message contenant la valeur de température.
Ce capteur de température peut être trouvé pour un peu plus de 1€. C’est un capteur linéaire, il a une précision de 0,5 ºC et une sensibilité de 10 mV/ºC. Vous pouvez trouver plus d’informations dans sa fiche technique .
Le programme de cet exemple est également très simple et court. Comme toujours, nous commençons par la déclaration des variables. Cette fois, pour stocker la température, nous n’utiliserons pas une variable int mais une variable float pour stocker les décimales.
Entrées analogiques arduino
Lire la tension à la sortie d’un potentiomètre et la restituer via la console. Connecter le potentiomètre à l’entrée analogique A0, lire sa valeur et allumer la LED en fonction de la valeur lue de manière proportionnelle au moyen d’une sortie analogique PWM.
Faites une version avec plus de transitions de sorte que si la moyenne (outputValue) change par rapport à la valeur précédente appliquée, faites une transition de 5 par 5 valeurs. Voyez comment, dans ce cas, le temps de boucle augmente à cause de cette transition.
Les microcontrôleurs Arduino contiennent un convertisseur analogique-numérique à 6 canaux sur la carte. Le convertisseur a une résolution de 10 bits et renvoie des entiers entre 0 et 1023. Les broches analogiques de l’Arduino ont également toutes les fonctionnalités des broches numériques. Par conséquent, si nous avons besoin de plus de broches numériques, nous pouvons utiliser les broches analogiques. La nomenclature des broches analogiques est A0, A1, etc…
Comme nous l’avons dit, l’Arduino Uno a des entrées analogiques qui, grâce aux convertisseurs analogiques-numériques, peuvent être comprises par le microcontrôleur, mais il n’a pas de sorties purement analogiques et pour résoudre ce problème, il utilise la technique PWM.