« Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 1 / 21 Prise en main
« Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 1 / 21 Prise en main d’un ARDUINO Aide-mémoire pour des fonctionnalités de base Sommaire 1 Carte ARDUINO ............................................................................................................ 3 1.1 Bornes des cartes UNO, NANO et MEGA .................................................................................... 3 1.2 Fonctions & bornes des cartes Arduino ...................................................................................... 4 1.3 Driver CH340 : connexion USB .................................................................................................... 5 1.4 Simulateurs en ligne.................................................................................................................... 5 1.5 Raccourcis clavier ........................................................................................................................ 5 1.6 Gestion du code et des commentaires ....................................................................................... 5 1.7 Principales fonctions Numériques Entrées / Sortie .................................................................... 6 1.8 Principales fonctions Analogiques Entrées / Sortie .................................................................... 6 1.9 Principales fonctions de Temps .................................................................................................. 6 1.10 Principales fonctions de nombre aléatoire ................................................................................. 7 1.11 Principales fonctions de gestion des bits et octets ..................................................................... 7 1.12 Principales fonctions de gestion des interruptions externes ...................................................... 8 2 Les Variables et constantes ........................................................................................... 9 2.1 Variables ..................................................................................................................................... 9 2.2 Gestion et conversion de variables ............................................................................................. 9 2.3 Constantes .................................................................................................................................. 9 3 Les Tableaux ................................................................................................................10 3.1 Créer un tableau à 1 dimension ................................................................................................ 10 3.2 Créer un tableau à 2 dimensions .............................................................................................. 10 3.3 Créer un tableau de chaînes de caractères ............................................................................... 10 3.4 Déterminer la taille d’un tableau (nombre de lignes, colonnes) .............................................. 11 4 Les Opérations ............................................................................................................11 5 Les Conditions .............................................................................................................12 5.1 Opérations logiques .................................................................................................................. 12 5.2 Comparaisons ........................................................................................................................... 12 5.3 Conditions ................................................................................................................................. 12 6 Port Série ....................................................................................................................14 6.1 Configuration ............................................................................................................................ 14 6.2 Envoi de données ...................................................................................................................... 14 6.3 Réception de données .............................................................................................................. 15 7 Débugger le programme ..............................................................................................15 8 Inclure un fichier .........................................................................................................16 8.1 Créer un fichier « .ino » ............................................................................................................ 16 8.2 Créer un fichier « .h » ............................................................................................................... 16 9 Les Fonctions ...............................................................................................................16 9.1 Fonction simple ......................................................................................................................... 16 9.2 Fonction typée .......................................................................................................................... 17 9.3 Fonction avec paramètres ........................................................................................................ 17 « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 2 / 21 10 Économiser de la mémoire SRAM ................................................................................18 10.1 Serial.print................................................................................................................................. 18 10.2 Progmem................................................................................................................................... 18 11 Gestion de la mémoire EEPROM ..................................................................................20 11.1 Écrire / Modifier ........................................................................................................................ 20 11.2 Lire ............................................................................................................................................ 20 12 Quelques bibliothèques utiles… ...................................................................................20 13 Pour aller plus loin… ....................................................................................................21 13.1 Installer le logiciel XLoader ....................................................................................................... 21 13.2 Créer un fichier « HEX » ............................................................................................................ 21 13.3 Télécharger ou Uploader un fichier « HEX » dans une carte Arduino ...................................... 21 « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 3 / 21 1 Carte ARDUINO 1.1 Bornes des cartes UNO, NANO et MEGA Arduino UNO (source http://marcusjenkins.com) Arduino NANO (source http://marcusjenkins.com) « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 4 / 21 Arduino MEGA (source http://marcusjenkins.com) 1.2 Fonctions & bornes des cartes Arduino SPI MOSI MISO SCK CS OU SS UNO 11 12 13 10 NANO 11 12 13 10 MEGA 51 50 52 53 I2C SDA SCL UNO A4 A5 NANO A4 A5 MEGA 20 21 PWM PWM UNO 3, 5, 6, 9, 10 et 11 NANO 3, 5, 6, 9, 10 et 11 MEGA 2 à 13 44 à 46 Num* A0 A1 A2 A3 A4 A5 A6 A7 UNO 14 15 16 17 18 19 NANO 14 15 16 17 18 19 20 21 Num * : Nom des broches analogiques utilisées en numérique (DIGITAL) « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 5 / 21 1.3 Driver CH340 : connexion USB Les cartes compatibles Arduino utilisent la puce CH340 pour fournir une connectivité USB. Il est nécessaire d’installer le pilote CH340 pour connecter une carte Arduino à un PC Windows : le convertisseur USB permet ainsi une communication via le port série de l’Arduino. Une recherche sur un navigateur Internet permet de trouver des liens de téléchargement. Par exemple : • https://github.com/HobbyComponents/CH340-Drivers • https://www.arduined.eu/ch340-windows-8-driver-download/ • http://283.mytrademe.info/ch340.html 1.4 Simulateurs en ligne A. Il est possible de réaliser des montages Arduino basiques grâce à un simulateur en ligne gratuit (mais propriétaire). Ce simulateur, appelé « 123D Circuits », est proposé par la société Autodesk : http://123d.circuits.io B. Le site www.arduino.cc propose également un simulateur et programmateur en ligne. Il faut pour cela créer un compte à l’adresse : https://create.arduino.cc 1.5 Raccourcis clavier Ctrl + S Enregistre le projet Ctrl + T Met en forme du texte (formatage automatique) Ctrl + R Vérifie le code de programmation Ctrl + U Téléverse le code de programmation dans l’Arduino 1.6 Gestion du code et des commentaires delay (2000) ; // Ajout du commentaire Met en commentaire toute la suite de la ligne /* … … */ Les symboles /*et */délimitent le code mis en commentaire « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 6 / 21 1.7 Principales fonctions Numériques Entrées / Sortie pinMode(2, OUTPUT); Configure la broche numérique N°2 en sortie pinMode(2, INPUT); Configure la broche numérique N°2 en entée pinMode(2, INPUT_PULLUP); Configure la broche numérique N°2 en entée avec l’activation de la résistance de rappel interne ‘résistance de tirage) digitalWrite(2, HIGH); Met un niveau logique HIGH (HAUT en anglais) sur la broche numérique N°2 digitalWrite(2, LOW); Met un niveau logique LOW (BAS en anglais) sur la broche numérique N°2 digitalRead(2); Lit l’état de la broche numérique N°2 : valeur HIGHT (1) ou LOW (0) 1.8 Principales fonctions Analogiques Entrées / Sortie analogRead (A2) ; Lit l’état de la broche analogique N°A2 : valeur comprise entre 0 et 1023 pour une carte ayant une résolution de 10 bits Seules les broches A0 à Ax peuvent être lues en analogique analogWrite (2, 255) ; Envoie une onde PWN sur la broche N°2 : le cycle varie entre 0 (toujours à l’état BAS) et 255 (toujours à l’état HAUT) Toutes les broches ne sont pas compatibles avec le PWM La fréquence PWM d'Arduino est d’environ 500 Hz 1.9 Principales fonctions de Temps delay (2000) ; Met le programme en pause pendant la durée (en millisecondes) spécifiée en tant que paramètre delayMicroseconds (2000) ; Met le programme en pause pendant la durée (en microsecondes) spécifiée en tant que paramètre. micros () ; Renvoie le nombre de microsecondes depuis que la carte Arduino a commencé à exécuter le programme Ce nombre unsigned long débordera (reviendra à zéro) après environ 70 minutes millis () ; Renvoie le nombre de microsecondes depuis que la carte Arduino a commencé à exécuter le programme actuel Ce nombre unsigned long débordera (reviendra à zéro) après environ 50 jours Astuce : Pour éviter des bugs au démarrage de cartes Arduino compatibles, on peut ajout delay (2000) dès la première ligne de démarrage du setup() ; « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 7 / 21 Exemple : unsigned long previousMillis = 0; long interval = 1000 ; void setup() { } void loop() { unsigned long currentMillis = millis(); if (currentMillis – previousMillis >= interval) { previousMillis = currentMillis; … } } 1.10 Principales fonctions de nombre aléatoire random (300) ; Génère un nombre unsigned long pseudo-aléatoire entre 0 et 299 random (30 , 200) ; Génère un nombre unsigned long pseudo-aléatoire entre 30 et 200 randomSeed (300) ; Génère un nombre unsigned long pseudo-aléatoire en le faisant démarrer à un point arbitraire de sa séquence aléatoire Exemple avec aucune connexion sur la broche A0 : randomSeed(analogRead(A0)); 1.11 Principales fonctions de gestion des bits et octets bit (n) ; n: le bit dont la valeur à calculer bitClear (x, n) ; x: la variable numérique dont le bit est à effacer n: bit à effacer, à mettre à « 0 » bitSet (x, n) ; x: la variable numérique dont le bit est à écrire n: bit pour écrire la valeur « 1 » bitWrite (x, n, b) ; x: la variable numérique dont le bit est à lire n: bit à lire b: la valeur à écrire sur le bit (0 ou 1) bitRead (x, n) ; x: la variable numérique dont le bit est à lire n: bit à lire « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 8 / 21 1.12 Principales fonctions de gestion des interruptions externes attachInterrupt(digitalPinToInterrupt(pin), Apel, mode) ; Broche 2 ou 3 pour UNO, NANO Broche 2, 3, 18, 19, 20, 21 pour MEGA Apel = fonction appelée lors de l’interruption mode LOW pour déclencher l'interruption lorsque la broche est à l’état BAS mode CHANGE pour déclencher l'interruption lorsque la broche change de valeur RISING pour se déclencher lorsque la broche passe de l’état BAS à l’état HAUT FALLING pour se déclencher lorsque la broche passe de l’état HAUT à l’état BAS noInterrupts() ; Désactive les interruptions interrupts() ; Active les interruptions Exemple : byte ledPin = 13; byte interruptPin = 2; boolean state = LOW; void setup() { pinMode(ledPin, OUTPUT); pinMode(interruptPin, INPUT_PULLUP); attachInterrupt(digitalPinToInterrupt(interruptPin), blink, CHANGE); } void loop() { digitalWrite(ledPin, state); } void blink() { state = !state; } « Aide-Mémoire ARDUINO » - 07/11/2019 www.beauxboulons.org 9 / 21 2 Les Variables et constantes 2.1 Variables Les différents types de variables : Type Nombre Valeurs Nbre sur X bits Nbre d’octets int Entier -32 768 à +32 767 16 bits 2 octets long Entier -2 147 483 648 à +2 147 483 uploads/Geographie/ tuto-arduino-initiation 1 .pdf
Documents similaires
-
12
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jan 21, 2022
- Catégorie Geography / Geogra...
- Langue French
- Taille du fichier 1.2077MB