Appuyez sur Entrée pour voir vos résultats ou Echap pour annuler.

Débuter avec Arduino

Ceux et celles qui me suivent sur les réseaux sociaux, vous avez sûrement vu passé ma publication concernant l’Arduino. Sinon, n’hésitez à me suivre sur Facebook, LinkedIn ou Twitter. Envoyez-moi vos suggestions d’articles 🙂

Ceci dit, je vous propose cette semaine de débuter une nouvelle série d’articles concernant l’Arduino.

Que c’est?!

Un Arduino est un microcontrôleur basé sur la puce ATmega de Atmel. Tout dépendant de la saveur que vous choisirez (Arduino Uno, Arduino Mega, etc.), ce sera principalement cette puce qui changera. Pour ma part, j’ai un Arduino Mega qui roule sur une ATmega2560.

La différence principale en les différentes moutures d’Arduino est le nombre de « pin » d’entrée/sortie et sa mémoire interne.

À quoi ça sert?

Atmega, le coeur d’Arduino

Comme pour du code régulier, l’Arduino ne devrait avoir qu’une seule fonction. En gros, le PCB a plusieurs « prises » auxquelles on peut brancher des composants électroniques pour soit lire ou écrire des données analogiques ou numériques. Ces « prises » ou « pins » sont connectées au microcontrôleur, ce qui nous permet de les manipuler par programmation.

Si vous n’avez pas une base en électronique, pas de soucis, je vais vous détailler les termes 😛

Entrée analogique

Toute valeur provenant d’un composant externe se mesurant en Volt. Ces entrées sont souvent utilisées pour récupérer une valeur d’un capteur (ex. : Le son d’un microphone, la quantité de lumière reçue sur une photorésistance, la température d’un capteur thermique, etc.). Ces valeurs se chiffrent en Volt et correspondent à un ratio de la quantité reçu sur le capteur.

Par exemple, si vous connecter une photorésistance, dont le rôle est de produire un courant électrique proportionnel à la quantité de lumière qui frappe sur la résistance, vous obtiendrez un chiffre à la lecture de la « pin » qui correspond à la quantité de lumière. Vous pouvez alors exécuter du code spécifique selon l’information reçue pour, par exemple, allumer une lumière lorsqu’il fait sombre.

Photorésistance

Sortie analogique

De la même façon qu’on peut lire un intervalle de courant sur une pin, on peut aussi écrire une donnée analogique sur une des pins. On peut penser par exemple à du son qu’on voudrait jouer dans un haut-parleur.

Entrée numérique

Au contraire de l’analogique, le numérique ne peut avoir que deux valeurs (nos bonnes vielles pantoufles de programmeur!), soit 0/1, vrai/faux, on/off etc. Un cas d’utilisation typique d’une entrée numérique serait un bon vieux bouton. Lorsque vous appuyez sur le bouton, l’Arduino reçoit 5v sur sa pin, sinon 0v (presque!).

Sortie numérique

Comme pour l’entrée, mais on produit un courant de 5v ou non sur une pin en particulier. On peut, par exemple, allumer une diode électroluminescente (LED) ou autre.

Diodes électroluminescentes (LED)

Comment ça fonctionne?

Évidemment, la raison pour laquelle on parle d’Arduino sur une blogue de programmation, c’est parce qu’on peut le programmer! Typiquement, un Arduino possède une prise micro USB pour le connecter à un PC. Puis, vous téléchargez l’EDI Arduino qui reconnait le board connecté.

Ce qu’il faut savoir avec ce genre de microcontrôleur, c’est qu’il prend une entrée quelconque via une ou plusieurs de ses pins, analyse les données reçues puis produit une sortie.  La partie « analyse des données » se fait dans un langage propriétaire, mais qui ressemble fortement à C et C++. Ne vous en faites pas trop, vous pouvez faire tout ce que vous pouvez imaginer comme si c’était du C++ ou du C, mais vous avez des fonctions supplémentaires pour manipuler les entrées et sorties du microcontrôleur.

Côté code, il y a deux fonctions principales que vous pourrez voir dans pratiquement tous les sketchs (nom utilisé pour nommer les sources Arduino).

Exemple

Un des premiers sketches que vous allez essayer, c’est de faire clignoter une LED.

Lorsque le Arduino boot, il initialisera la pin 13 en mode « sortie ». pinMode()  et OUTPUT sont accessibles sans nécessiter d’inclure une librairie externe. Ce sont des composants du langage propriétaire.

Ceci nous permettra d’écrire une donnée dans la pin #13.

Comme tout bon code, celui-ci s’explique de lui-même. Vous obtenez une LED, préalablement connectée à la pin 13, qui clignote.

Conclusion

Aujourd’hui, vous avez appris ce qu’est un Arduino et un survol de comment ça fonctionne.

Maintenant que cette introduction est faite, je vous propose d’explorer un premier projet pour la suite de la série. Si vous avez des idées, écrivez-les dans les commentaires ci-dessous. Prenez aussi quelques secondes pour partager cet article sur vos réseaux sociaux.

Cheers!

Suivez-nous par courriel!

Saisissez votre adresse courriel pour vous abonner au blog d'Ezo et recevoir une notification de chaque nouvel article par email.