Main

Référence : Langage Arduino : [ Mini | Standard | Etendue | Maxi ] Librairies : [ Vue d'ensemble | Synthèse ] Infos : [ Comparaison | Changements ]

Référence "Maxi" du langage Arduino et des librairies


A DECOUVRIR : Ateliers Arduino
des supports PDF didactiques pour apprendre et approfondir Arduino pas à pas !

Déjà plusieurs centaines de pages de supports PDF en ligne !

NOUVEAU : Pyduino
la librairie qui vous permet de programmer un miniPC (RaspberryPI, pcDuino,..)

... comme une carte Arduino... et bien plus encore !
Vous en avez rêvé ? www.mon-club-elec.fr l'a fait !

Nouveau : Une machine multi-outil facile à construire, low-cost et propulsée par Arduino, çà vous tente ?

Toutes les instructions de la référence étendue du langage Arduino et des librairies sur une seule page et en français !

La référence complète étendue du langage Arduino


Structure

Fonctions de base

Ces deux fonctions sont obligatoires dans tout programme en langage Arduino :

Structures de contrôle

Syntaxe de base

Opérateurs arithmétiques

  • = (égalité)
  • + (addition)
  • - (soustraction)
  • * (multiplication)
  • / (division)
  • % (modulo)

Opérateurs de comparaison

  • == (égal à)
  • != (différent de)
  • < (inférieur à)
  • > (supérieur à)
  • <= (inférieur ou égal à)
  • >= (supérieur ou égal à)

Opérateurs booléens

  • && (ET booléen)
  • || (OU booléen)
  • ! (NON booléen)

Pointeurs

Opérateurs bit à bit

Voir également :

Opérateurs composés

Variables et constantes

Les variables sont des expressions que vous pouvez utilisez dans les programmes pour stocker des valeurs, telles que la tension de sortie d'un capteur présente sur une broche analogique.

Constantes prédéfinies

Les constantes prédéfinies du langage Arduino sont des valeurs particulières ayant une signification spécifique.

A ajouter : constantes décimales prédéfinies

Expressions numériques

Types des données

Les variables peuvent être de type variés qui sont décrits ci-dessous.

Synthèse des types de données Arduino

Voir également :

Pour info : les type de données avr-c

Conversion des types de données

Portée des variables et qualificateurs

Utilitaires

Référence

Fonctions

Entrées/Sorties Numériques

Entrées analogiques

Sorties "analogiques" (génération d'impulsion)

Entrées/Sorties Avancées

Temps

Math

Pour davantage de fonctions mathématiques, voir aussi la librairie math.h : log, log10, asin, atan, acos, etc...

Trigonométrie

Nombres randomisés (hasard)

Bits et Octets

Interruptions Externes

Interruptions

Voir également la librairie interrupt.h.

Communication

Toutes les fonctions des librairies


Les fonctions des librairies intégrées au langage Arduino

Voici les fonctions disponibles avec les librairies intégrées au langage Arduino :

  • La librairie Serial - pour les communications séries entre la carte Arduino et l'ordinateur ou d'autres composants
  • La classe String - pour la manipulation avancée de chaînes de caractères (nouveauté version 0019)

Librairie Serial

Classe String

Les fonctions de la classe String

Opérateurs

Les fonctions des librairies Standards

Voici les fonctions disponibles avec les librairies standards :

Librairie EEPROM

Librairie Ethernet

Instructions de la classe Ethernet

La classe Ethernet initialise la librairie ethernet et les paramètres du réseau.

Instructions de la classe Server

La classe Server crée des serveurs qui envoient des données vers et reçoivent des données depuis des clients connectés (programmes s'exécutant sur d'autres ordinateurs ou composants).

Instructions de la classe Client

La classe Client crée des clients qui peuvent se connecter à des serveurs et envoyer ou recevoir des données.

Librairie LiquidCrystal (LCD)

Fonctions d'initialisation

Fonctions de gestion de l'écran

Fonctions de positionnement du curseur

Fonctions modifiant l'aspect du curseur

Fonctions d'écriture

Fonctions de contrôle du mode d'affichage

Fonction de création de caractère personnalisé

Librairie SPI

Librairie Servo

Librairie Stepper

Librairie SoftwareSerial

Librairie Wire

Les fonctions de librairies dédiées utiles

Voici la synthèse des fonctions de quelques librairies utiles "hors-référence"

Librairie S65 Display :

Les fonctions d'initialisation :

  • S65Display : constructeur de déclaration des objets afficheur S65
  • init(clock_div) : initialisation du module
  • clear(color) : efface l'écran dans la couleur voulue

Fonction de gestion des couleurs

  • RGB(r,g,b) : couleur au format RGB (Rouge, Vert Bleu)

Les fonctions de dessin

  • drawPixel(x0, y0, color) : trace un pixel
  • drawLine(x0, y0, x1, y1, color) : trace une ligne
  • drawRect(x0, y0, x1, y1, color) : trace le contour d'un rectangle
  • fillRect(x0, y0, x1, y1, color) : trace un rectangle plein
  • drawCircle(x0, y0, radius, color) : trace le contour d'un cercle
  • fillCircle(x0, y0, radius, color) : trace un cercle plein

les fonctions de texte

  • drawChar(x, y, c, size, color, bg_color) : affiche un caractère
  • drawText(x, y, stringSram, size, color, bg_color) : affiche une chaîne de caractères depuis la SRAM
  • drawTextPGM(x, y, stringFlash, size, color, bg_color) : affiche une chaîne de caractères depuis la mémoire FLASH
  • drawMLText(x, y, stringSram, size, color, bg_color) : affiche une chaîne de caractères multilignes depuis la SRAM
  • drawMLTextPGM(x, y, stringFlash, size, color, bg_color) : affiche une chaîne de caractères multilignes depuis la mémoire FLASH
  • Pour plus de détails sur la taille des caractères, voir : Taille des caractères

les fonctions d'affichage des nombres

  • drawInteger(x0, y0, integerNumber, base, size, color, bg_color) : affiche une valeur entière de n'importe quel type NOUVEAU
  • drawFloat(x0, y0, FloatNumber, digits, size, color, bg_color) : affiche une valeur à virgule NOUVEAU

Fonctions diverses disponibles

Ces fonctions sont publiques mais sont utilisées plutôt en interne par la librairie S65 :

Librairie S65Shield Rotary Encoder

  • RotaryEncoder : Constructeur de déclaration d'un objet encodeur rotatif
  • init() : fonction d'initialisation de l'encodeur.
  • service() : fonction de gestion de l'interruption à intervalle régulier pour lecture état de l'encodeur
  • step() : fournit le pas de l'encodeur (-1, 0, +1)
  • sw() : fournit l'état du bouton poussoir

Librairie Keypad

Librairie Librairie Afficheur couleur MI0283QT2 (320x240 pixels)

Les fonctions d'initialisation :

Fonction de contrôle de l'afficheur

  • led(luminosite) : Contrôle l'intensité de la LED de rétro-éclairage de 0 à 100%
  • getWidth() : Renvoie la valeur de la largeur de l'écran (dépend de l'orientation)
  • getHeight() : Renvoie la valeur de la hauteur de l'écran (dépend de l'orientation).

Fonction de gestion des couleurs

  • RGB(r,g,b)? : couleur au format RGB (Rouge, Vert Bleu)

Les fonctions de dessin

  • drawPixel(x0, y0, color) : trace un pixel
  • drawLine(x0, y0, x1, y1, color) : trace une ligne
  • drawRect(x0, y0, x1, y1, color) : trace le contour d'un rectangle
  • fillRect(x0, y0, x1, y1, color) : trace un rectangle plein
  • drawCircle(x0, y0, radius, color) : trace le contour d'un cercle
  • fillCircle(x0, y0, radius, color) : trace un cercle plein

les fonctions de texte

  • drawChar(x, y, c, size, color, bg_color) : affiche un caractère
  • drawText(x, y, stringSram, size, color, bg_color) : affiche une chaîne de caractères depuis la SRAM
  • drawTextPGM(x, y, stringFlash, size, color, bg_color) : affiche une chaîne de caractères depuis la mémoire FLASH

pas implantées :

  • drawMLText?(x, y, stringSram, size, color, bg_color) : affiche une chaîne de caractères multilignes depuis la SRAM
  • drawMLTextPGM?(x, y, stringFlash, size, color, bg_color) : affiche une chaîne de caractères multilignes depuis la mémoire FLASH
  • Pour plus de détails sur la taille des caractères, voir : Taille des caractères?

les fonctions d'affichage des nombres

  • drawInteger(x0, y0, integerNumber, base, size, color, bg_color) : affiche une valeur entière de n'importe quel type NOUVEAU
  • drawFloat(x0, y0, FloatNumber, digits, size, color, bg_color) : affiche une valeur à virgule NOUVEAU

Les fonctions d'affichage

  • printOptions( size, color, bg_color) : fixe les options d'affichage
  • printClear() : efface l'écran et positionne le curseur d'affichage dans le coin supérieur gauche
  • printXY(x, y) : positionne le curseur d'affichage
  • print(text) : affiche du texte stocké en RAM
  • printPGM(text) : affiche du texte stocké en mémoire FLASH

Librairie One-Wire

Fonctions d'initialisation

Fonctions de communication

Fonction de contrôle des données

Fonction de contrôle de de l'alimentation

Librairie du Touchpad de l'afficheur couleur MI0283QT (320x240)

Fonctions d'initialisation

Fonctions de calibration

  • setCalibration( *lcd, *touchpad) : Calibration du touchpad à partir des coordonnées des points de calibration.
  • writeCalibration(eeprom_addr) : écrit les données de calibration en Eeprom à l'adresse indiquée.
  • readCalibration(eeprom_addr) : Lit les données de calibration en Eeprom.
  • getXraw : Renvoie la dernière position X, non calibrée
  • getYraw : Renvoie la dernière position Y, non calibrée

Fonctions de contrôle du Touchpad

  • service() : Fonction de service du touchpad. Doit être appelée dans la fonction loop()
  • getPressure() : Renvoie la valeur de la pression actuelle sur le touchpad.
  • getX() : Renvoie la dernière valeur de position X lue par la routine service
  • getY : Renvoie la dernière valeur de position Y lue par la routine service

Commentaires utilisateurs

Tout en permettant l'utilisation des fonctions classiques disponibles en langage C, le langage Arduino (open source!) est un véritable "méta-langage" orienté pour la programmation microcontrôleur qui offre des fonctions de syntaxe très simple mais très puissantes, comme par exemple les fonctions analogRead, map ou encore shiftOut. La plupart des librairies utiles sont également disponibles pour la communication série avec le PC, l'utilisation d'afficheur LCD standard, de clavier matriciel, de servomoteurs ou encore de moteurs pas-à-pas. A l'usage, ce langage est vraiment très efficace et fait gagner un temps précieux !

Quelque chose que vous ne trouvez pas ? Consulter la référence étendue ou les librairies. Voir également la liste des contributions de la communauté au code (en anglais).


Page d'accueil de la référence Arduino en français

Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum Arduino ou à l'adresse suivante : support_at_mon-club-elec_point_fr

Le texte original de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike 3.0 . Les exemples de code dans la référence sont dans le domaine public.

La présente traduction française commentée a été réalisée par Xavier HINAULT (2010-2012) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.