Outils pour utilisateurs

Outils du site


start:arduino:librairies:creation

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
start:arduino:librairies:creation [2020/12/07 12:39] gerardadminstart:arduino:librairies:creation [2023/01/27 16:08] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 ======== Ecrire une bibliothèque pour Arduino======== ======== Ecrire une bibliothèque pour Arduino========
 +
 +Traduit de la page : https://www.arduino.cc/en/Hacking/LibraryTutorial
  
  
Ligne 43: Ligne 45:
 Si vous exécutez ce croquis, il clignotera le code pour SOS (un appel de détresse) sur la broche 13. Si vous exécutez ce croquis, il clignotera le code pour SOS (un appel de détresse) sur la broche 13.
  
-L'esquisse comporte quelques parties différentes que nous devrons apporter dans notre bibliothèque. Premièrement, bien sûr, nous avons les fonctions dot () et dash () qui clignotent. Deuxièmement, il y a la variable ledPin que les fonctions utilisent pour déterminer la broche à utiliser. Enfin, il y a l'appel à pinMode () qui initialise la broche en tant que sortie.+L'esquisse comporte quelques parties différentes que nous devrons apporter dans notre bibliothèque. 
  
-Commençons à transformer le croquis en bibliothèque!+Premièrement, bien sûr, nous avons les fonctions dot () et dash () qui clignotent. 
 + 
 +Deuxièmement, il y a la variable ledPin que les fonctions utilisent pour déterminer la broche à utiliser.  
 + 
 +Enfin, il y a l'appel à pinMode () qui initialise la broche en tant que sortie. 
 + 
 + 
 +__Commençons à transformer le croquis en bibliothèque!__
  
 Vous avez besoin d'au moins deux fichiers pour une bibliothèque: un fichier d'en-tête (avec l'extension .h) et le fichier source (avec l'extension .cpp). Le fichier d'en-tête a des définitions pour la bibliothèque: essentiellement une liste de tout ce qui se trouve à l'intérieur; tandis que le fichier source a le code réel. Nous appellerons notre bibliothèque "Morse", donc notre fichier d'en-tête sera Morse.h. Jetons un coup d'œil à ce qui s'y passe. Cela peut sembler un peu étrange au début, mais cela aura plus de sens une fois que vous verrez le fichier source qui va avec. Vous avez besoin d'au moins deux fichiers pour une bibliothèque: un fichier d'en-tête (avec l'extension .h) et le fichier source (avec l'extension .cpp). Le fichier d'en-tête a des définitions pour la bibliothèque: essentiellement une liste de tout ce qui se trouve à l'intérieur; tandis que le fichier source a le code réel. Nous appellerons notre bibliothèque "Morse", donc notre fichier d'en-tête sera Morse.h. Jetons un coup d'œil à ce qui s'y passe. Cela peut sembler un peu étrange au début, mais cela aura plus de sens une fois que vous verrez le fichier source qui va avec.
Ligne 66: Ligne 75:
 Une classe est simplement une collection de fonctions et de variables qui sont toutes conservées ensemble au même endroit. Ces fonctions et variables peuvent être publiques , ce qui signifie qu'elles sont accessibles aux personnes utilisant votre bibliothèque, ou privées , ce qui signifie qu'elles ne sont accessibles qu'à partir de la classe elle-même. Chaque classe a une fonction spéciale appelée constructeur , qui est utilisée pour créer une instance de la classe. Le constructeur a le même nom que la classe et aucun type de retour. Une classe est simplement une collection de fonctions et de variables qui sont toutes conservées ensemble au même endroit. Ces fonctions et variables peuvent être publiques , ce qui signifie qu'elles sont accessibles aux personnes utilisant votre bibliothèque, ou privées , ce qui signifie qu'elles ne sont accessibles qu'à partir de la classe elle-même. Chaque classe a une fonction spéciale appelée constructeur , qui est utilisée pour créer une instance de la classe. Le constructeur a le même nom que la classe et aucun type de retour.
  
-Vous avez besoin de quelques autres éléments dans le fichier d'en-tête. L'une est une instruction #include qui vous donne accès aux types et constantes standard du langage Arduino (cela est automatiquement ajouté aux esquisses normales, mais pas aux bibliothèques). Cela ressemble à ceci (et va au-dessus de la définition de classe donnée précédemment):+Vous avez besoin de quelques autres éléments dans le fichier d'en-tête. L'une est une instruction **#include** qui vous donne accès aux types et constantes standard du langage Arduino (cela est automatiquement ajouté aux esquisses normales, mais pas aux bibliothèques). Cela ressemble à ceci (et va au-dessus de la définition de classe donnée précédemment):
  
  
Ligne 229: Ligne 238:
 Enfin, pour appeler les fonctions dot () et dash () , nous devons les préfixer avec morse. - le nom de l'instance que nous voulons utiliser. Nous pourrions avoir plusieurs instances de la classe Morse, chacune sur sa propre broche stockée dans la variable privée _pin de cette instance. En appelant une fonction sur une instance particulière, nous spécifions les variables d'instance à utiliser lors de cet appel à une fonction. Autrement dit, si nous avions les deux: Enfin, pour appeler les fonctions dot () et dash () , nous devons les préfixer avec morse. - le nom de l'instance que nous voulons utiliser. Nous pourrions avoir plusieurs instances de la classe Morse, chacune sur sa propre broche stockée dans la variable privée _pin de cette instance. En appelant une fonction sur une instance particulière, nous spécifions les variables d'instance à utiliser lors de cet appel à une fonction. Autrement dit, si nous avions les deux:
  
-<Code c>+<code c>
 Morse morse ( 13 ) ; Morse morse ( 13 ) ;
 Morse morse2 ( 12 ) ; Morse morse2 ( 12 ) ;
Ligne 238: Ligne 247:
 Si vous avez essayé la nouvelle esquisse, vous avez probablement remarqué que rien de notre bibliothèque n'était reconnu par l'environnement et mis en évidence en couleur. Malheureusement, le logiciel Arduino ne peut pas automatiquement déterminer ce que vous avez défini dans votre bibliothèque (même si ce serait une fonctionnalité intéressante à avoir), vous devez donc lui donner un peu d'aide. Pour ce faire, créez un fichier appelé keywords.txt dans le répertoire Morse. Ça devrait ressembler à ça: Si vous avez essayé la nouvelle esquisse, vous avez probablement remarqué que rien de notre bibliothèque n'était reconnu par l'environnement et mis en évidence en couleur. Malheureusement, le logiciel Arduino ne peut pas automatiquement déterminer ce que vous avez défini dans votre bibliothèque (même si ce serait une fonctionnalité intéressante à avoir), vous devez donc lui donner un peu d'aide. Pour ce faire, créez un fichier appelé keywords.txt dans le répertoire Morse. Ça devrait ressembler à ça:
  
 +<code c>
 Morse KEYWORD1 Morse KEYWORD1
 tiret KEYWORD2 tiret KEYWORD2
 dot KEYWORD2 dot KEYWORD2
-[Obtenir le code]+</code>
  
 Chaque ligne porte le nom du mot-clé, suivi d'une tabulation (pas d'espaces), suivi du type de mot-clé. Les classes doivent être KEYWORD1 et sont de couleur orange; les fonctions doivent être KEYWORD2 et seront marron. Vous devrez redémarrer l'environnement Arduino pour qu'il reconnaisse les nouveaux mots-clés. Chaque ligne porte le nom du mot-clé, suivi d'une tabulation (pas d'espaces), suivi du type de mot-clé. Les classes doivent être KEYWORD1 et sont de couleur orange; les fonctions doivent être KEYWORD2 et seront marron. Vous devrez redémarrer l'environnement Arduino pour qu'il reconnaisse les nouveaux mots-clés.
/home/chanteri/www/fablab37110/data/attic/start/arduino/librairies/creation.1607341166.txt.gz · Dernière modification : 2023/01/27 16:08 (modification externe)