Étape 3: La morsure
Je dois souligner à nouveau que vous pouvez télécharger et exécuter le code ci-joint par lui-même et il bouclera juste constamment, affichant le niveau actuel de la batterie, mais qui n’est pas l’utilisation prévue. Au lieu de cela c' est les pièces doivent être copiés dans un croquis de plus grand, ajoutant ses fonctionnalités à un projet plus vaste.
Il y a quatre sections du code : ce que j’appellerai initialisations (les trucs en haut, en dehors de toute fonction), la fonction Setup(), la fonction Loop() et la fonction de l’utilisateur qui exécute réellement. Vous sera notamment quelque chose dans les quatre sections pour ce code. Permet de démarrer en haut (ayant le code ouvert il rendra plus facile à suivre ici. Certains navigateurs peuvent ouvrir le .ino sous forme de texte dans une nouvelle fenêtre ou onglet, FYI).
Initialisations
Il y a trois bibliothèques à le œuvre ici. #include<Wire.h>
est une bibliothèque de Arduino standard. #include<LBattery.h>
Ce document provient d’ensemble de bibliothèque de la LIO et comprend la batterie la fonctionnalité d’analyse. #include "rgb_lcd.h"
est la bibliothèque de l’écran LCD du Grove qui nous viens d’installer.
Enfin, l’écran LCD doit être initialisé avec rgb_lcd lcd;
et vous êtes prêt à passer à...
void setup()
Une seule participation ici : lcd.begin(16, 2);
. Ceci définit la taille de l’écran LCD en colonnes puis rangées et doit aller quelque part près du sommet du bloc, mais il n’importe pas trop.
void loop()
Il s’agit d’une section plus vague, faute d’un meilleur mot. Mon code a seulement l’appel de fonction batteryLevel();
. Placé seul dans la fonction boucle il obtient juste appelé dans une boucle infinie, mais en cas d’implémentation dans une esquisse plus grande il s’appellera probablement à la suite d’une entrée. Il ne doit même pas être dans la fonction de boucle, que vous pouvez l’appeler dans vos propres fonctions définies par l’utilisateur. En fait, chaque fois que vous souhaitez afficher le niveau de charge de batterie, appeler cette fonction.
Sub batteryLevel()
C’est le cheval de bataille réel de l’esquisse, c’est où tout est fait en réalité.
Tout d’abord, il y a quelques ménage : définissant une variable holding, préparant le l’écran et prendre la mesure de la batterie.
Une fois qu’il a fait commutateurs basés sur les quatre cas possibles pour la lecture de la batterie : 100, 66, 33 ou 0. chaque cas définit sa propre couleur de rétro-éclairage (vert, jaune, orange, rouge, respectivement) et affiche la valeur de la ligne du bas.
Enfin, il ajoute « Recharger » et si le jury est branché une boucle remplit les espaces restants sur la rangée du bas avec des points et la fonction renvoie.