TP2 1 PDF

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 8

ATELIER SYSTEMES EMBARQUES TI

TP2
1. Communication Série : Affichage d’un message sur la console
Montage : insérer uniquement la carte Arduino

Programme :

void setup()
{Serial.begin(9600); } Initialiser la communication a un débit de 9600
void loop()
{ Serial.println("hello isetZG") Ecrire un message Texte sur la console
}

Exécution :

Pour afficher le message il faut cliquer sur « moniteur série » en bas de la zone de code

p. 1
ATELIER SYSTEMES EMBARQUES TI

2. Interrupteur : Contrôle d’état


Montage :

Carte Arduino, plaque a essai, LED, Résistance 250 Ohm, Interrupteur à glissière

Programme :

void setup()
{
pinMode(4,OUTPUT); Pin 4 en mode Sortie
pinMode(8,INPUT); Pin 8 en Mode Entrée (lecture de l’état de
} l’interrupteur)

void loop()
{ Test sur l’état de l’interrupteur
if (digitalRead(8)==HIGH)
digitalWrite(4,HIGH);
else
digitalWrite(4,LOW);
}

Exécution : cliquer sur l’interrupteur pour changer son état.

p. 2
ATELIER SYSTEMES EMBARQUES TI

3. Elément piézoélectrique (Buzzer)


Montage : carte Arduino, résistance de 100 Ohm, plaque a essai, élément piézo

Programme :

void setup()
{
pinMode(3, OUTPUT);
}
void loop()
{
tone(3,1000); Activer le buzzer sur la Pin 3 avec une fréquence 1000
delay(500); pendant 500ms
noTone(3); Arrêt de la tonalité pendant 500ms
delay(500);
}

Exécution : changer la fréquence et les délais pour mieux comprendre

p. 3
ATELIER SYSTEMES EMBARQUES TI

4. Clavier numérique : Configuration et Lecture de touches


Montage :

Carte Arduino, Pavé numérique 4x4 (Pin 9 de la carte correspond à la Pin 1 du clavier et la Pin 2 de la
carte Correspond à la Pin 8 du clavier)

Programme : Configuration du clavier

#include <Keypad.h> Insertion de la bibliothèque keypad

const byte ROWS = 4; nombre de lignes


const byte COLS = 4; nombre de colonnes
char keys[ROWS][COLS] = { Matrice correspond aux différents touches
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; entrées numériques où sont branchées les lignes
byte colPins[COLS] = {5, 4, 3, 2}; entrées numériques où sont branchées les colonnes

Keypad Clavier = Keypad( makeKeymap(keys),


rowPins, colPins, ROWS, COLS );

p. 4
ATELIER SYSTEMES EMBARQUES TI

Variable Clavier de type keypad qui fait la


correspondance entre les entrées de la carte et les
touches du clavier

Programme 1 : Lecture d’une touche et affichage sur le moniteur série

void setup(){
Serial.begin(9600);
}
void loop(){
char key = Clavier.getKey(); Lecture de la touche tapée

if (key != NO_KEY){ S’il y a une valeur de retour alors affichage sur la


Serial.println(key); console
}

Programme 2 : Lecture d’une chaine de caractère qui termine par « # » et affichage sur Console

String txt; Déclaration variable chaine de caractère

void setup(){
Serial.begin(9600);
txt.reserve(20); Réserve 20 caractères à la chaine de caractère
}

void loop(){
char key = Clavier.getKey();
if (key != NO_KEY){
Serial.println(key);
if (key!='#') Si le caractère lu est <> # alors je l’ajoute à la
txt=txt+key; variable txt si non alors j’affiche la chaine de
else caractère txt et j’efface son contenu.
{Serial.println(txt);
txt="";
}
}
}

Programme complet : il faut ajouter au début de chaque programme la partie Configuration du


clavier .

p. 5
ATELIER SYSTEMES EMBARQUES TI

5. Capteur de distance par ultrason


Montage : carte Arduino, plaque à essai, capteur de distance a ultrason

Programme :

long Distance=0; Création variable pour contenir la distance


void setup()
{
Serial.begin(9600);
}

void loop()
{
pinMode(4, OUTPUT);
digitalWrite(4, LOW); Initialisation de la Pin 4 en bas pendant 2µs,
delayMicroseconds(2); ensuite en haut pendant 10µs
digitalWrite(4, HIGH);
delayMicroseconds(10);
digitalWrite(4, LOW); Remettre la Pin 4 en bas
pinMode(4, INPUT); Configurer en entrée pour lire la valeur de la
distance en pouce
Distance=0.01723 *pulseIn(4,HIGH); Lire la distance et la convertir en Cm
Serial.println(Distance);
}

p. 6
ATELIER SYSTEMES EMBARQUES TI

Puisque la partie initialisation et lecture se répète chaque fois alors on utilise une fonction qui
permet de faire tout le travail ainsi le programme devient :

long Distance=0;
long MesureDistance(int Pin) Création fonction d’initialisation et
{ lecture de la distance
pinMode(Pin, OUTPUT); // Clear the trigger
digitalWrite(Pin, LOW);
delayMicroseconds(2);
digitalWrite(Pin, HIGH);
delayMicroseconds(10);
digitalWrite(Pin, LOW);
pinMode(Pin, INPUT);
return pulseIn(4,HIGH);
}
void setup()
{
Serial.begin(9600);
}
void loop()
{
Distance=0.01723 * MesureDistance(4); Appel de la fonction et conversion en CM
Serial.println(Distance);
}

Exécution :

Afficher le moniteur série, cliquer sur le capteur avec la souris déplacer le cercle bleu dans la zone de
mesure de distance

p. 7
ATELIER SYSTEMES EMBARQUES TI

EXERCICES
Exercice 1 : Feu de croisement avec Mode jour/nuit
Mode Jour :

- Lumière rouge pendant 30s


- Lumière orangé pendant 10s
- Lumière verte pendant 20s
- Et le cycle se répète

Mode Nuit : lumière orangé clignote

Q1. Etablir la liste des composants nécessaires

Q2. Réaliser le Montage

Q3. Ecrire le programme qui répond au fonctionnement du système.

Exercice 2 : Radar de recule pour une voiture


Le radar de recule d’une voiture permet de mesurer la distance entre la voiture et un obstacle

- Si la distance est <=70cm alors une lampe rouge s’allume avec un signal sonore
- Si la distance est entre 71 et 150 Cm une lampe orangée s’allume
- Si la distance est entre 151 et 250 une lampe verte s’allume
- Si la distance est >250 aucune lampe ne s’allume

Le système ne fonctionne sauf si la voiture est en Marche

Q1. Etablir la liste des composants nécessaires

Q2. Réaliser le Montage

Q3. Ecrire le programme qui répond au fonctionnement du système.

Exercice 3 : Serrure numérique d’un coffre-fort


La porte d’un coffre-fort se ferme et s’ouvre en tapant sur son clavier un code de 4 caractères
(prédéfini dans le programme) suivi de *.

- Si la porte est ouverte une lampe verte est allumée


- Si la porte est fermée une lampe rouge est allumée

Initialement la porte est ouverte et la lampe verte est allumée

Q1. Etablir la liste des composants nécessaires

Q2. Réaliser le Montage

Q3. Ecrire le programme qui répond au fonctionnement du système.

p. 8

Vous aimerez peut-être aussi