J'ai testé pour vous l'Arduino

Cela faisait un moment que cette idée me trottait dans la tête, et j’ai enfin décidé de franchir le pas. Il est temps de se lancer dans le fabuleux monde de l’Arduino.

Tout d’abord, un Arduino, qu’est-ce que c’est ?

Arduino, c’est la rencontre des développeurs et des p’tits génies de l’électronique. Rajoutez à ça une couche d’Open Source, et vous obtenez ce fabuleux mélange.

En fait, l’Arduino est un petit circuit imprimé, dont les plans sont disponibles gratuitement et sous licence libre : libre à chacun de faire sa propre plaque, voir même de la commercialiser. La seule restriction se situe dans l’utilisation du nom.

Sur ce circuit, vous trouvez un microcontrôleur ATmega328 avec 32ko de mémoire pour stocker vos programmes. Vous pouvez interagir avec ce microcontrôleur par le biais de 14 broches d’entrées / sorties numériques (0 ou 1) et 6 broches analogiques (une tension de 0 à 5V)

A partir de là, c’est à vous de jouer, et de l’interfacer avec ce que vous voulez : LED, servo moteurs, capteurs de lumières, de température, d’inclinaison, voir dans les montages plus évolués, un écran LCD et même un GPS ! Au niveau de la programmation, rien de bien compliqué, tout est très accessible. Il suffit de connaître les rudiments du C pour vous en sortir. Vous installez l’IDE Arduino, et d’un clic vous transférez votre programme dans la mémoire du microcontroleur. Simple

Histoire de bien commencer, je vous ai préparé un petit tutoriel, basé sur ce superbe kit Arduino que j’ai eu la chance de recevoir de la part de RS Components France.

Dans ce kit, vous trouverez l’essentiel pour bien débuter, et acquérir les bases des interactions sur Arduino (LED, résistances, un « BreadBoard », des condensateurs, boutons poussoirs, etc)

Voici donc le contenu du kit :

La première partie du tutorial consistera juste à allumer jusqu’à 3 LEDs de couleurs. Il suffit de raccorder les 3 LEDs chacune à une résistance, pour ne pas les griller, et ensuite chacune à une broche de l’Arduino.

void setup()
{
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);

digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}

void loop()
{
}

Simple non ?

Allez, on s’attaque à un peu plus compliqué à présent Nous allons utiliser un bouton poussoir, pour allumer les LEDs de manières cycliques (d’abord la verte, puis la jaune puis la rouge, et on recommence)

Le but ici est d’utiliser non plus les sorties de l’Arduino (que nous avons vu dans l’exemple ci-dessus) mais de s’attarder sur l’entrée logique reliée à l’interrupteur.

int offset;

void setup()
{
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, INPUT);

digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);

offset = 0;
}

void loop()
{
if ( digitalRead(5) == HIGH ) {
offset++;

if ( offset > 2 )
{
offset = 0;
}
delay(300);
}
if ( offset == 0 ) {
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
else if ( offset == 1 ) {
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
}
else if ( offset == 2 ) {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
}
}

A chaque tour de boucle dans la procédure principale, nous regardons si le bouton a été pressé. Si tel est le cas, on éteint la LED allumée, et on allume la suivante. Alors, conquis par la simplicité de la chose ? Faites un tour sur la page Arduino de RS Components pour voir tous les kits / extensions possibles A vous de jouer !

Temps de lecture : 3 minutes