project_power-bank/firmware/Debug/Debug.ino
2018-10-05 13:22:45 +01:00

80 lines
1.7 KiB
C++

#include "LowPower.h"
//#include <avr/wdt.h>
#define PWRLED 5
#define CHGLED 6
#define PWRBTN 8
#define CHGBTN 9
#define PWRMFT 11
#define VIN A0
#define LED1 A1
#define LED2 A2
#define LED3 A3
#define LED4 A4
#define LED5 A5
#define IN1 A6
#define IN2 A7
int i = 0;
int buttonPState = 0;
int buttonCState = 0;
boolean IsPowerOn = 0;
boolean isCharging = 0;
int sensorVal = 0;
float voltage = 0;
float countVal = 0;
void setup() {
// wdt_enable(WDTO_8S);
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT);
pinMode(LED5, OUTPUT);
pinMode(PWRLED, OUTPUT);
pinMode(CHGLED, OUTPUT);
pinMode(PWRBTN, INPUT_PULLUP);
pinMode(CHGBTN, INPUT_PULLUP);
pinMode(PWRMFT, OUTPUT);
pinMode(VIN, INPUT);
digitalWrite (PWRMFT, LOW);
pinMode(IN1, INPUT);
pinMode(IN2, INPUT);
Serial.begin(9600);
}
void loop() {
Serial.println("PWRBTN OFF?: " && digitalRead(PWRBTN));
Serial.println();
Serial.println("CHGBTN OFF?: " && digitalRead(CHGBTN));
Serial.println();
delay(100);
analogWrite(PWRLED, 201.91); delay(500);
analogWrite(PWRLED, 0); delay(500);
analogWrite(CHGLED, 201.91); delay(500);
analogWrite(CHGLED, 0); delay(500);
GetVoltage();
Serial.println(voltage);
delay(500);
digitalWrite(LED1, HIGH); delay(500);
digitalWrite(LED2, HIGH); delay(500);
digitalWrite(LED3, HIGH); delay(500);
digitalWrite(LED4, HIGH); delay(500);
digitalWrite(LED5, HIGH); delay(500);
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
}
void GetVoltage(){
for (int q = 0; q < 10; q++) {
countVal = countVal + analogRead(VIN);
delay(5);
}
sensorVal = countVal / 10;
voltage = sensorVal * (5.0 / 1023.0);
countVal = 0;
}