u
This commit is contained in:
parent
07c951dd6f
commit
bfcc5fa70b
@ -7,21 +7,81 @@
|
||||
#define SCREEN_HEIGHT 32
|
||||
#define OLED_RESET -1
|
||||
|
||||
#define PWRBTN 3
|
||||
#define CHGBTN 4
|
||||
#define PWRLED 5
|
||||
#define CHGLED 6
|
||||
#define VBAT A0
|
||||
#define FETCTRL 2
|
||||
#define CSTAT1 A1
|
||||
#define CSTAT2 A2
|
||||
|
||||
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
|
||||
|
||||
int batteryPct;
|
||||
int var;
|
||||
int var2;
|
||||
int var3;
|
||||
|
||||
void setup() {
|
||||
delay(100);
|
||||
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
|
||||
display.clearDisplay();
|
||||
display.setTextColor(WHITE);
|
||||
Serial.begin(9600);
|
||||
pinMode(VBAT, INPUT_PULLUP);
|
||||
pinMode(CSTAT1, INPUT_PULLUP);
|
||||
pinMode(CSTAT2, INPUT_PULLUP);
|
||||
pinMode(FETCTRL, OUTPUT);
|
||||
pinMode(PWRLED, OUTPUT);
|
||||
pinMode(CHGLED, OUTPUT);
|
||||
pinMode(PWRBTN, INPUT_PULLUP);
|
||||
pinMode(CHGBTN, INPUT_PULLUP);
|
||||
digitalWrite(FETCTRL, LOW);
|
||||
draw();
|
||||
}
|
||||
|
||||
void loop() {
|
||||
display.drawRect(5, 5, 123, 27, SSD1306_WHITE);
|
||||
display.display(); // Update screen with each newly-drawn rectangle
|
||||
delay(500);
|
||||
// put your main code here, to run repeatedly:
|
||||
|
||||
delay(50);
|
||||
var = analogRead(VBAT);
|
||||
var2 = digitalRead(PWRBTN);
|
||||
var3 = digitalRead(CHGBTN);
|
||||
Serial.print(var);
|
||||
Serial.print(" ");
|
||||
Serial.print(var2);
|
||||
Serial.print(" ");
|
||||
Serial.println(var3);
|
||||
checkPresses();
|
||||
}
|
||||
|
||||
void checkPresses(){
|
||||
if (digitalRead(PWRBTN) == 0) {
|
||||
delay(100);
|
||||
if (digitalRead(PWRBTN) == 0) {
|
||||
pwrLed();
|
||||
}
|
||||
}
|
||||
if (digitalRead(CHGBTN) == 0) {
|
||||
delay(100);
|
||||
if (digitalRead(CHGBTN) == 0) {
|
||||
chgLed();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void chgLed(){
|
||||
digitalWrite(CHGLED, HIGH);
|
||||
delay(100);
|
||||
digitalWrite(CHGLED, LOW);
|
||||
}
|
||||
|
||||
void pwrLed(){
|
||||
digitalWrite(PWRLED, HIGH);
|
||||
delay(100);
|
||||
digitalWrite(PWRLED, LOW);
|
||||
}
|
||||
|
||||
void draw() {
|
||||
display.drawRect(5, 5, 123, 27, SSD1306_WHITE);
|
||||
display.display();
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user