Académique Documents
Professionnel Documents
Culture Documents
Objectifs :
Prise en main de développement des Systèmes embarqués
Nous utiliserons une carte arduino uno. Elle emploi un microcontrôleur ATMEGA328P
alimenté en 5 V. Il y a 14 entrées/sorties numériques dont 6 sont utilisables en PWM
(Pulse Width Modulation ou MLI pour modulateur de largeur d’impulsion). Il y a 6
entrées analogiques. Le microcontrôleur possède un CAN avec 10 bits de résolution. Sur
la carte, il y a un circuit qui permet de gérer facilement l’USB qui peut alimenter la carte.
Les différents éléments :
NB : Le langage utilisé par le logiciel Arduino pour programmer le microcontrôleur est basé
sur les langages C/C++.
• La première partie permet de définir les constantes et les variables en déclarant leur type. Elle
permet également l’inclusion des bibliothèques utilisées dans le programme au moyen de
#include.
• La fonction setup() contient les instructions d’initialisation ou de configuration des ressources
de la carte comme par exemple, la configuration en entrée ou sorties des broches d’E/S
numériques, la définition de la vitesse de communication de l’interface série, etc.. Cette
fonction n’est exécutée qu’une seule fois juste après le lancement du programme.
• La fonction loop() contient les instructions du programme à proprement parlé. Cette
fonction sera répétée indéfiniment tant que la carte ARDUINO restera sous tension.
Exercice1 :
Ce programme doit permettre de faire clignoter une DEL connectée sur la broche numérique n°10.
Elle doit rester allumée pendant 2 s et éteinte pendant 1 s.
Voici l'algorithme :
1. int LedPin=10;
2. void setup() {
3. // initialize digital pin LedPin as an output.
4. pinMode(LedPin, OUTPUT);
5. }
6.
7. // the loop function runs over and over again forever
8. void loop() {
9. digitalWrite(LedPin, HIGH); // turn the LED on (HIGH is the voltage level)
10. delay(2000); // wait for 2 seconds
11. digitalWrite(LedPin, LOW); // turn the LED off by making the voltage LOW
12. delay(1000); // wait for a second
13. }
Exercice2 :
Indication : Utiliser un tableau pour stocker les valeurs des pins de chaque LED. Utiliser un
tableau de variables booléennes pour les états d’allumage vous sera également très utile !