Stap 12: Code uitleg
Het eerste deel van de code definieert de globale variabele pin dat wordt gebruikt door de Ledbar en de LiPo-lader. Deze pin kan worden gebruikt door elke functie die in dit programma aangegeven. Merk op dat de LED is aangesloten op een digital pin, terwijl de andere zijn aangesloten op een analoge pin op de Arduino.
Binnen de setup functie hebben we een seriële communicatie tussen de computer en de Arduino met behulp van een specifieke frequentieband, die in dit geval is 9600 geopend. Vervolgens hebben we gedefinieerd welke pin wordt gebruikt als een uitvoer of invoer. Als we kijken naar de lus functie allermeest naar de belangrijkste code woont hier. Het eerste wat dat we hebben gedaan is om te lezen van de waarde van de LiPo lader en omzetten in spanning. Merk op dat de functie analogRead() een geheel getal tussen 0 retourneert tot 1023 omdat de Arduino board een 10 bit analoog naar digitaal converter bevat (2 ^ 10 = 1024).
Om dit 10 bits kaart teken gelezen door de temperatuursensor in analoge waarde, moeten we vermenigvuldigt de waarde van de sensor met een resolutie van de Arduino board, dat ongeveer is 0.0049 (5V/1024 eenheden).
Na het ophalen van de waarde van de spanning, gebruikten we een controlestructuur, zoals de "als verklaring" functie om te controleren of de spanning binnen een bepaald bereik. Op basis van dat bereik, we geven het niveau van de batterij door te schakelen de LEDs evenals weer van het percentage van de batterij op de seriële monitor, zoals te zien in de bovenstaande foto's.
Wanneer het batterijniveau is op 5%, ziet u de laatste LED op de balk knipperen.
Als u denkt dat er iets uitgeschakeld is, misplaatst dubbel te controleren dat er geen code. Of het niveau van de batterij met behulp van een multimeter controleren en vergelijken met het resultaat van de code.