Académique Documents
Professionnel Documents
Culture Documents
com
2024-02-26
Cours de microcontrôleurs
Arduino
Pr. Karim El Mokhtari
Département de génie électrique
Faculté des sciences et technologies
Tanger
Qu’est-ce qu’Arduino ?
1
2024-02-26
Qu’est-ce qu’Arduino ?
• Arduino est une carte microcontrôleur dotée d'une prise de bus série
universelle (USB) pour se connecter à votre ordinateur
• De nombreuses prises de connexion pouvant être câblées à des composants électroniques externes tels
que des moteurs, des relais, des capteurs de lumière, …
Un microcontrôleur
2
2024-02-26
Entrées/Sorties
• Entrées analogiques
• 6 broches étiquetées comme Analog In A0 à A5
• Mesurer la tension
• Haute résistance interne
• Ils peuvent être configurés pour fonctionner comme entrées/
sorties numériques
• Connexions numériques
• Étiqueté numérique 0 à 13
• Utilisé comme entrées ou sorties (0V/5V)
• Les broches 0 et 1 peuvent être utilisées comme Tx/Rx
Microcontrôleur ATmega328
• 28 broches
• Processeur 8 bits, architecture Risc
• 2 Ko de RAM (données)
• ROM Flash de 32 Ko (code)
• 1 Ko EEPROM (données non volatiles)
3
2024-02-26
Boucliers
4
2024-02-26
Arduino Uno
Arduino Méga
Arduino-Nano
- 54 broches d'entrée/sortie
- 128 Ko de mémoire flash pour stocker des
croquis et des données fixes
- 8 Ko de RAM
- 4 Ko d'EEPROM
EDI Arduino
dix
5
2024-02-26
EDI Arduino
EDI Arduino
11
12
6
2024-02-26
• Branchez votre Arduino sur le port USB, sélectionnez le type de carte, le port série
(par exemple COM3) et chargez votre croquis sur Arduino
1. Sélectionnez le type de carte 2. Sélectionnez le port série (Windows) 3. Téléchargez le croquis sur la carte
13
Bases du langage C
14
7
2024-02-26
Processus de compilation
15
Structure d'esquisse
•v définitivement. Contient le
m ntinuellement.
16
8
2024-02-26
Exemple d'esquisse
délai de 500 ms
Réglez la sortie numérique 13 (LED) sur 0 V
délai de 500 ms
17
Variables
18
9
2024-02-26
• Une méthode pour tester votre code C consiste à envoyer du texte de la carte
à l'IDE Arduino à l'aide du moniteur série.
19
20
dix
2024-02-26
• Solution:
• Le délai augmente de 100 ms après chaque
itération. La vitesse de clignotement devient de
plus en plus lente.
• Lorsque le délai est supérieur à 3 s, le
ifblock le remet à 100 ms
21
• Opérateurs de comparaison
22
11
2024-02-26
23
Boucle while
24
12
2024-02-26
• Pour les valeurs constantes – comme les affectations de broches – qui ne changent pas,
utilisez des constantes au lieu de variables.
25
Fonctions - Définition
• Une fonction est un morceau de code qui a un nom, des arguments facultatifs et
une valeur de retour facultative
• Une fonction peut être appelée depuis n'importe où dans une esquisse et peut
contenir ses propres variables locales
• Exemple:
• Écrivez une fonction flash() qui fait clignoter la LED une fois. Appelez cette fonction 20 fois, puis
faites une pause de 3 secondes
26
13
2024-02-26
Fonctions - Exemple
• Solution:
27
Fonctions - Paramètres
…
}
Réécrivez le programme précédent en utilisant la nouvelle fonction flash
28
14
2024-02-26
Fonctions - Paramètres
Variable globale: accessible n'importe où dans le programme
• Solution:
29
• Appel de fonction :
30
15
2024-02-26
Types de données en C
31
commentaires
32
16
2024-02-26
Tableaux
• Exemple d'utilisation : imprimer toutes les valeurs du tableau sur le port série.
33
Tableaux
34
17
2024-02-26
Cordes
35
36
18
2024-02-26
• Solution:
• L'état de la broche 5 est envoyé au
moniteur série chaque seconde
• Remarque : Lorsque l'entrée n'est pas
connectée, dans quel état se trouve-t-elle ?
37
• Si vous utilisez un switch pour mettre une entrée à 0V, il est nécessaire d'ajouter une
résistance pull-up pour amener la broche à 5V lorsque le switch est ouvert
38
19
2024-02-26
39
40
20
2024-02-26
41
• Les impulsions sont délivrées au même rythme (environ 500 Hz), mais le rapport
cyclique varie pour correspondre à la valeur de sortie.
42
21
2024-02-26
• Répondre:
• Ce croquis lit un chiffre entre 0
et 5 et affiche le
tension équivalente sur la broche 3. en
utilisant la commandeanalogWrite.
43
Entrées analogiques
• Les entrées analogiques donnent une valeur comprise entre 0 (pour 0 V) et 1023
(pour 5 V) en fonction de la tension à la broche d'entrée analogique (A0 à A5). Ils
utilisent un ADC (convertisseur analogique-numérique) 10 bits
44
22