Terrain de jeu Arduino - Tutorial Library
Donc, vous voulez écrire une bibliothèque pour l'Arduino?
-Génial !
Voici un petit tutoriel sur la façon d'écrire un.
Nous ferons ceci:

La navigation
Qu'est-ce qu'une bibliothèque?
Une bibliothèque est une collection d'instructions qui sont conçus pour exécuter une tâche spécifique.
Les bonnes bibliothèques décrivent les tâches qu'il tente de résoudre le nom de la bibliothèque elle-même, et les noms des fonctions associées à la bibliothèque.
En effet, la bibliothèque doit être intuitif à utiliser, et tous les noms doit décrire, de manière efficace, toutes les questions concernant ce. quand. et où. mais devrait cacher la façon.
Sur l'Arduino les bibliothèques servent souvent comme emballage autour de la langue API Arduino pour améliorer la lisibilité du code et l'expérience utilisateur.
Arduino IDE place, il est dans les bibliothèques \ matériel \ bibliothèques La bibliothèque pour ce tutoriel a l'URL C: \ programmation \ arduino-0015 \ matériel \ bibliothèques \ LED13 sur ma machine Windows XP.
Qu'est-ce que les conventions Arduino?
Les bibliothèques Arduino utilise une convention UppercaseUppercase pour les noms de bibliothèque et lowercaseUppercase convention de nommage pour les fonctions.
Ce que cela signifie est que notre bibliothèque a / doit obtenir le nom LED13 (pas led13 par exemple), et les fonctions seront nommées sur () et hors ().
Je pourrais avoir sélectionné TurnON () et TURNOFF (). mais je l'ai choisi le plus court, car il est aussi descriptif, mais en plus il est plus court. [Code court == moins de probabilité pour les fautes de frappe]
Il est important de se rappeler que vous n'avez pas besoin d'une bibliothèque. Elle ne rend plus simple.
Si vous êtes intéressé par la mécanique interne d'une bibliothèque spécifique, vous trouverez le Cpp MyLibrary (si téléchargé) dans / matériel / bibliothèques / MyLibrary / MyLibrary Cpp changement MyLibrary à quel que soit le nom de la bibliothèque que vous souhaitez étudier
Pourquoi est-ce que nous avons des bibliothèques?
Comment écrire des bibliothèques?
Définir la fonctionnalité de votre bibliothèque doit fournir
Cela devrait être la prémisse de notre bibliothèque.
À ce stade, nous ne nous soucions pas comment le sur () devrait fonctionner, mais seulement qu'il devrait exister.
Faire une preuve de concept croquis
Avant de mettre en œuvre une nouvelle classe je trouve généralement très utile pour tester l'idée dans une esquisse. Essayez quelques implémentations différentes, voir ce qui utilise le moins d'espace, et ce qui semble plus simple d'utilisation. Sélectionnez la solution qui compromet ces deux d'une manière appropriée.
Une expérience que je l'ai fait est que si l'on a quelque chose un peu semblable à travailler à partir, ce qui est souvent bénéfique.
Pour notre bibliothèque, un pense immédiatement à droite Blink? Le Bonjour tout le monde! de μCs. Alors, allez-y et lancez l'Arduino IDE et ouvrez le Fichier-> Sketchbook-> Examples-> Digital-> Blink.
La première chose que nous allons faire, est de couper le code dans la boucle (), et le coller dans une nouvelle fonction appelée clignotement vide ().
Je soupçonne que ce n'est pas surprenant, étant que nous savons ce code clignote la LED connectée à la broche 13.
Maintenant, écrire blink (); à l'intérieur de la boucle, de sorte que le code qui était une fois dans la boucle () et est maintenant situé à l'intérieur blink, est exécuté (parce que la boucle appelle clignotement).
Maintenant, vous devriez avoir une esquisse qui ressemble à ceci:
int ledPin = 13; // LED connectée à la broche numérique 13
void setup # 40; # 41; // exécuter une fois, lorsque le début d'esquisse
Source LED13
Vous verrez que cette source sera très semblable à l'esquisse du concept.
Cependant, j'ai changé certains types de données, et le reste est juste la syntaxe c ++.
Notez le. il est appelé « opérateur de résolution de portée »
//<
LED13. LED13 # 40; # 41; # 123;
pinMode # 40; LED_PIN. SORTIE # 41; ; // faire que la broche une SORTIE
Sélection publique, protégée ou privée
Sélection / returntypes types de données
Étant l'Arduino dispose de ressources limitées, je pense que la sélection de la variable « plus petit » est le chemin à parcourir. Une broche Arduino sera (probablement) ne se 255. Donc, au-dessus dans ce cas, en utilisant un octet est suffisant, et préférable.
Sélection Variable- / functionnames
L'API a mis en place quelques arduino indices sur la façon de nommer une variable ou une fonction. Commencez minuscules, et indiquer de nouveaux mots avec une lettre majuscule. 'MyDescriptiveVariable'
Exemples d'écriture
Assurez-vous de créer des exemples qui sont aussi auto décrivant possible. En outre, il devrait être fait un effort pour la démo la plupart des fonctions.
Blink Exemple
N'oubliez pas de mettre en œuvre ce fichier, car il fait en utilisant votre bibliothèque beaucoup plus facile. Notre bibliothèque a quatre noms qui a besoin d'être soulignés.
Ce sont:
Et ils sont mis en œuvre keywords.txt comme:
Rappelez-vous #include
Vous obtiendrez une série d'erreurs si vous avez oublié d'inclure l'Arduino, et d'essayer d'utiliser certaines des fonctions Arduino ou types de données.
Il est seulement nécessaire d'inclure le Arduino.h dans votre bibliothèque .h, votre Cpp comprendra parce qu'il comprend votre tête.
Supprimer le fichier d'objet et de recompiler entre chaque changement de tête et / ou de la source
Lorsque des modifications sont apportées dans l'en-tête ou la source, ces changements ne sont pas intégrés automatiquement dans le fichier objet de votre bibliothèque. Pour être sûr que vos modifications sont compilés et utilisés, supprimez le .o LED13 et recompiler un croquis dans l'Arduino IDE.
Apprendre à interpréter le débogueur / compilateur Arduino IDE.
Il peut être un gain de temps pour prendre une erreur d'heure et en provoquant volontairement, afin que vous sachiez ce que les messages d'erreur sont provoqués par pour référence ultérieure.
Partage de votre bibliothèque avec d'autres personnes
L'un des moyens les plus rapides pour débusquer les bogues dans une bibliothèque est de laisser d'autres personnes utilisent la bibliothèque. Souvent, les gens trouvent non seulement des bugs, mais contribuent également des correctifs pour corriger ces bugs.
Informations sur cette page
Une partie des tutoriels et nos vidéos ALPHABETA.