Stap 6: De Code van de bronvaluta
/*
Een batterijtester levenscyclus met behulp van een LCD-scherm als output
*/
de code van de bibliotheek omvatten:
#include < LiquidCrystal.h >
initialiseren van de bibliotheek met de nummers van de pennen van de interface
LiquidCrystal lcd (2, 3, 5, 6, 7, 8);
Const int buttonPin = 0;
int sensorPin = A0; Selecteer de invoer pin voor de batterij
int sensorValue = 0; variabele de waarde afkomstig van de sensor opslaan
Const int relay = 1;
int buttonState = 0;
zweven mah = 0,0;
lange Tijdstart;
VOID Setup {}
de LCD's aantal kolommen en rijen instellen:
LCD.begin (16, 2);
Een bericht op het LCD-scherm afdrukt.
LCD.Print ("leven batterijtester");
pinMode (Relais, uitvoer);
pinMode (buttonPin, INPUT);
}
void loop {}
Stel de cursor op de kolom 0, lijn 1
(Opmerking: lijn 1 is de tweede rij, aangezien tellen met 0 begint):
digitalWrite (Relais, 0); verrekening van de LED-relay
terwijl (buttonState == LOW) {}
sensorValue = analogRead(sensorPin); Lees de batterij
de spanning
buttonState = digitalRead(buttonPin);
Als (buttonState == HIGH) {}
Als (bb > 0) {bb = 0;} else {bb = 1;}
// }
lcd.setCursor (0, 1);
LCD.Print((sensorValue*4.98)/1023);
LCD.Print ("volt");
delay(500);
} //end krijgen klaar lus
digitalWrite (Relais, 1); de LED-relay aangezet
lcd.setCursor (0, 0);
LCD.Print ("test");
lcd.setCursor (0, 1);
LCD.Print("");
mAh = 0,0;
Tijdstart = millis ();
terwijl (((sensorValue*4.98)/1023) > 3,00) {}
lcd.setCursor (0, 1);
LCD.Print((sensorValue*4.98)/1023);
LCD.Print ("V");
sensorValue = analogRead(sensorPin); Lees de batterij
mAh = mah + (((sensorValue*4.98)/1023)/4) / 7.2;
LCD.Print(mAh);
LCD.Print ("mAh");
vertraging (500);
lcd.setCursor(8,0);
LCD.Print ((millis()-Tijdstart) / 1000); tijd sinds test staarted
} / / end batterijafvoerkanaal
digitalWrite (Relais, 0); verrekening van de LED-relay
eindresultaten
lcd.setCursor (0, 0);
LCD.Print(mAh);
LCD.Print ("mAH");
LCD.Print ((millis()-Tijdstart) / 1000);
LCD.Print ("S");
buttonState = digitalRead(buttonPin);
}