Arduino lire l état d une sortie

Arduino lire l état d une sortie

Lorsque nous voulons activer la sortie numérique 6 de l’arduino, l’instruction correcte est la suivante

Dans ce cours, vous apprendrez à programmer différentes pratiques en utilisant les entrées numériques de la carte arduino. Pour chacun d’eux, la partie électronique que vous devrez connaître avant de les programmer est expliquée. Vous verrez également que vous pouvez les programmer en utilisant les langages de programmation par blocs ou textuels de l’Arduino.

Il est important de se rappeler que nous ne pouvons pas dépasser les limites de tension autorisées, c’est-à-dire que si une tension supérieure à 5 volts est appliquée à une entrée numérique, la carte arduino brûlera. Il en va de même pour les tensions négatives, nous devons donc nous assurer que la tension appliquée à une entrée numérique est comprise entre 0 et 5 volts.

Pour programmer les pratiques suivantes en utilisant le langage de programmation mBlock, vous devrez connaître les blocs de programmation suivants, qui sont responsables de la réception de la tension sur les broches numériques de la carte arduino.

Le premier bloc reçoit la valeur de la broche numérique 9 de la carte arduino. En revanche, le second bloc est utilisé dans les capteurs à ultrasons, et renvoie la distance en centimètres de l’objet le plus proche du capteur (comme expliqué dans la leçon suivante).

Broches numériques arduino uno

Tout d’abord, il est important de rappeler que les ports d’un microcontrôleur 8 bits ont le même nombre d’entrées/sorties, c’est-à-dire huit lignes. Cela suggère que l’ATmega328P, qui possède trois ports (B, C et D), dispose de 3 x 8 = 24 lignes d’entrée/sortie. Cependant, lorsqu’il est utilisé sur un Arduino, ce n’est pas le cas, comme nous allons le voir.

  Arduino mega 2560 mini

Le PORTB (port B) a deux lignes d’entrée/sortie occupées qui sont utilisées pour connecter le cristal de l’oscillateur. Ces broches, PORTB bit-6 et PORTB bit-7, peuvent être laissées libres si la puce est configurée pour utiliser l’oscillateur interne, mais cette option ne peut être utilisée sur l’Arduino car son système est déjà basé sur la vitesse du cristal de 16 MHz, et le cristal est soudé à ces broches sur le circuit imprimé.

Le PORTC a deux bits qui ne sont pas disponibles, l’un d’eux, le PORTC bit-6 est utilisé comme une entrée RESET, et l’autre bit (7) n’est pas câblé à l’extérieur de l’ATmega328P avec capsule PDIP qui vient se brancher dans le socket de l’Arduino Uno R3, parce qu’il n’a pas assez de lignes disponibles dans son paquet de 28 broches. Et lorsqu’il s’agit d’une puce TQFP 32 broches à montage en surface (comme sur l’Arduino Nano et certains clones de l’Arduino Uno), les deux lignes manquantes sont dédiées au convertisseur analogique-numérique (ADC6 et ADC7) et ne sont pas des broches d’entrée/sortie numériques.

Broches d’entrée et de sortie de l’Arduino

Dans cette session, nous allons voir que les broches numériques de l’Arduino peuvent être utilisées à la fois comme entrée et comme sortie. Nous allons lire un bouton externe ou un bouton-poussoir et allumer ou éteindre une LED selon que le bouton est enfoncé ou non.

Nous allons mettre en place un circuit avec une diode LED et une résistance connectée à la broche numérique 10 de l’Arduino, comme nous l’avons vu dans les sessions précédentes et également un second circuit avec un bouton poussoir S1 connecté à la broche 6 avec une résistance comme le montre le schéma ci-dessous.

  Logiciel interface graphique arduino

Notez que pendant que nous n’appuyons pas sur S1, la broche 6 de l’Arduino est connectée à 5V à travers la résistance R3 forçant une lecture de haute tension (HIGH). D’un autre côté, lorsque nous appuyons sur S1, nous fermons le circuit de la broche 6 à la terre, ce qui indique une tension basse. Dans les deux cas, nous avons une valeur de tension définie.

Si nous ne mettions pas la résistance R3, en appuyant sur S1 nous lirions correctement LOW sur la broche 6. Mais lorsque nous cessons d’appuyer sur S1, la broche 6 se trouve dans un état flottant, qui n’est ni haut ni bas mais indéterminé. Comme cela est inacceptable dans les circuits numériques, nous forçons une lecture élevée avec R3.

Quelles sont les broches de l’arduino ?

Eh bien, puisqu’il y a déjà deux réponses très complètes, et de par mes petites connaissances en programmation, je veux juste commenter pour les développements futurs que vous faites que vous faites attention quand vous assignez une valeur ou faites des comparaisons. Il y a plusieurs fois où cela semble incorrect dans votre code.

À tout cela je dois commenter que ce même je vais l’utiliser dans mon nouveau projet et ce n’est pas que j’ai problème d’amnésie mais que je prends quelques jours des bons, bien quelques semaines … et qui est à blâmer pour tout est TFTLCDCyg qui m’a empêché dans ces écrans FT8xx