1.11.9

News

Page  1 sur 3  > >>

2019-01-16
Catégorie : Arduino
Posté par : xavier
Un Circuit imprimé pour plusieurs sketches
2018-06-07
Catégorie : Arduino
Posté par : xavier
Des pistes pour developper un projet a base d'Arduino
2017-09-23
Catégorie : Expositions
Posté par : xavier

Les 4/5 Novembre 2017, au parc Savoie Expo de Chambéry (Savoie), se tiendra l'exposition Savoie Modelisme.

CMS - 1.11.9 - Bartolome
 

Premiers pas

Premier pas

Quelques commandes pour commencer:

pinMode()

Permet de définir si c'est une sortie (Output) ou une entrée (Input) vu du microprocesseur.

Les entrées permettent de connaître l'état de l'environnement grâce a des capteurs.

Les sorties, d'agir sur cet environnement, grâce à des actionneurs.

pinMode(led,OUTPUT);

digitalWrite()

Permet de donner un état haut (HIGH) ou bas (LOW) à une sortie.

digitalWrite(led,HIGH);

digitalRead()

Permet de savoir si l'entrée est à l'état bas (LOW) ou haut (HIGH)

variable=digitalRead(capteur);

il faut que variable soit préalablement défini:

int variable;

delay()

Oblige le microprocesseur a perdre du temps! Ce temps est indiqué en millisecondes.

delay(500);

 

Un premier programme:

#define led 13

void setup() {
   pinMode(led,OUTPUT);
}

void loop() {
   digitalWrite(led,HIGH);
   delay(500);
   digitalWrite(led,LOW);

 
delay(500);
}

Commentaires

Le programme est simple... Il permet de faire clignoter une led connectée sur la pin 13 avec un cycle de 1 seconde. Il se trouve que votre Arduino comporte une led connectée sur cette pin... regardez bien!

A remarquer:

- Le contenu des {} est indenté, c'est à dire déporté vers la droite pour faciliter la lecture. Cette indentation n'est pas un gadget mais se révèle essentielle quand les boucles s'imbriquent.

- Il est simple de changer de pin, il suffit de modifier la ligne #define led 13

- On pourrait aussi modifier la fréquence en remplaçant 500 par freq et en écrivant #define freq 500

- Il serait possible de modifier le rapport cyclique en remplaçant le 1er 500 par 250, le second par 750, par exemple.

- Le processeur ne peut rien faire d'autre... il est occupé à temps plein, même quand il perd du temps... Mais nous en reparlerons plus tard!

Programme N°2:

#define led 13
#define bouton 2

void setup() {
   pinMode(led,OUTPUT);
   pinMode(bouton,INPUT);
}

void loop() {
   int boutonVal=digitalRead(bouton);
   digitalWrite(led,boutonVal);
}

Commentaires

Le programme est encore simple... Il permet d'allumer la led de votre Arduino quand on appui sur un bouton... mais il n'y a pas de bouton! Il faudra donc en connecter un.

 

A remarquer:

- La variable boutonVal est définie sur la même ligne que la lecture. La portée de la variable ainsi définie est limitée au sous programme mais cela ne pose pas de problème puisqu'elle n'est pas utilisée en dehors du sous programme loop.

Nous avons besoin de:

- un bouton (interrupteur)

- une résistance (1k ohms 1/4w)

- quelques fils

pour réaliser le montage suivant:

 

Vous continuez???

Previous page: Préambule  Page suivante : Un petit pas en avant