Initial Commit
BIN
IMAGES/1.pdf
Executable file
BIN
IMAGES/2.pdf
Executable file
BIN
IMAGES/2024950802.jpg
Executable file
|
After Width: | Height: | Size: 72 KiB |
BIN
IMAGES/3699147681.jpg
Executable file
|
After Width: | Height: | Size: 64 KiB |
BIN
IMAGES/598883065.jpg
Executable file
|
After Width: | Height: | Size: 81 KiB |
BIN
IMAGES/91017.pdf
Executable file
BIN
IMAGES/DC-DC-3V-3-3V-3-7V-4-2V-to-5V-USB-1A-2A-Step-Up-1.jpg
Executable file
|
After Width: | Height: | Size: 616 KiB |
BIN
IMAGES/DC-DC-3V-3-3V-3-7V-4-2V-to-5V-USB-1A-2A-Step-Up-2.jpg
Executable file
|
After Width: | Height: | Size: 588 KiB |
BIN
IMAGES/DC-DC-3V-3-3V-3-7V-4-2V-to-5V-USB-1A-2A-Step-Up.jpg
Executable file
|
After Width: | Height: | Size: 632 KiB |
BIN
IMAGES/Free-Shipping-2pcs-Boost-step-up-Module-3V-3-3V-3-7V-4-2V-to-5V-1.jpg
Executable file
|
After Width: | Height: | Size: 598 KiB |
BIN
IMAGES/Free-Shipping-2pcs-Boost-step-up-Module-3V-3-3V-3-7V-4-2V-to-5V-2.jpg
Executable file
|
After Width: | Height: | Size: 592 KiB |
BIN
IMAGES/Free-Shipping-2pcs-Boost-step-up-Module-3V-3-3V-3-7V-4-2V-to-5V.jpg
Executable file
|
After Width: | Height: | Size: 605 KiB |
BIN
IMAGES/IMG_0243.PNG
Executable file
|
After Width: | Height: | Size: 778 KiB |
BIN
IMAGES/IMG_0244.PNG
Executable file
|
After Width: | Height: | Size: 1.4 MiB |
BIN
IMAGES/IMG_0245.PNG
Executable file
|
After Width: | Height: | Size: 238 KiB |
BIN
IMAGES/IMG_0246.PNG
Executable file
|
After Width: | Height: | Size: 303 KiB |
BIN
IMAGES/IMG_0247.PNG
Executable file
|
After Width: | Height: | Size: 1004 KiB |
BIN
IMAGES/IMG_8CC9B19A5F6B-1.jpeg
Executable file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
IMAGES/Li_Ion_DiscGph.jpg
Executable file
|
After Width: | Height: | Size: 62 KiB |
BIN
IMAGES/Screen Shot 2017-07-26 at 13.24.27.png
Executable file
|
After Width: | Height: | Size: 328 KiB |
BIN
IMAGES/Watchdog20110611.pdf
Normal file
BIN
IMAGES/nano.png
Executable file
|
After Width: | Height: | Size: 654 KiB |
BIN
IMAGES/rfp30n06le-arduino-lightbulb.png
Executable file
|
After Width: | Height: | Size: 85 KiB |
BIN
IMAGES/rfp30n06le-arduino-motor.png
Executable file
|
After Width: | Height: | Size: 71 KiB |
BIN
IMAGES/s-l1600.jpg
Executable file
|
After Width: | Height: | Size: 64 KiB |
BIN
IMAGES/s-l16002.jpg
Executable file
|
After Width: | Height: | Size: 75 KiB |
BIN
IMAGES/s-l16003.jpg
Executable file
|
After Width: | Height: | Size: 75 KiB |
64
List of parts + price.rtf
Executable file
@ -0,0 +1,64 @@
|
|||||||
|
{\rtf1\ansi\ansicpg1252\cocoartf1504\cocoasubrtf830
|
||||||
|
{\fonttbl\f0\fnil\fcharset0 Copperplate;}
|
||||||
|
{\colortbl;\red255\green255\blue255;}
|
||||||
|
{\*\expandedcolortbl;;}
|
||||||
|
\paperw11900\paperh16840\margl1440\margr1440\vieww14620\viewh11880\viewkind0
|
||||||
|
\pard\tx720\tx1440\tx2160\tx2891\tx3600\tx4320\tx5040\tx5760\tx6324\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0
|
||||||
|
|
||||||
|
\f0\fs28 \cf0 PowerBoost 1*6
|
||||||
|
\fs20
|
||||||
|
\fs28 = 6\'80\
|
||||||
|
Lightning 3.5 2.9*3
|
||||||
|
\fs20
|
||||||
|
\fs28 =
|
||||||
|
\fs30
|
||||||
|
\fs28 8.7\'80\
|
||||||
|
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0
|
||||||
|
\cf0 Acrylic 7.7*2 = 15.4\'80\
|
||||||
|
Batteries 10.1*8 = 80.8\'80\
|
||||||
|
Chargers 1.3*1
|
||||||
|
\fs20
|
||||||
|
\fs28 =
|
||||||
|
\fs18
|
||||||
|
\fs28 1.3\'80\
|
||||||
|
USB C 1.8*1 =
|
||||||
|
\fs20
|
||||||
|
\fs28 1.8\'80\
|
||||||
|
Micro Usb Free
|
||||||
|
\fs24
|
||||||
|
\fs28 = 0\'80\
|
||||||
|
\strike \strikec0 USB A 2.9*2 = 5.8\'80\strike0\striked0 \
|
||||||
|
Arduino 2.1*1 = 2.1\'80\
|
||||||
|
LED 0.8*3
|
||||||
|
\fs26
|
||||||
|
\fs28 =
|
||||||
|
\fs24
|
||||||
|
\fs28 2.4\'80\
|
||||||
|
Buttons 4.35*2 =
|
||||||
|
\fs22
|
||||||
|
\fs28 8.7\'80\
|
||||||
|
Ard Boost 0.86*2
|
||||||
|
\fs26
|
||||||
|
\fs28 =
|
||||||
|
\fs24
|
||||||
|
\fs28 1.8\'80\
|
||||||
|
MOSFET 5.9*1
|
||||||
|
\fs22
|
||||||
|
\fs28 =
|
||||||
|
\fs24
|
||||||
|
\fs28 5.9\'80\
|
||||||
|
Retractable 1.4*1 = 1.4\'80\
|
||||||
|
Shipping
|
||||||
|
\fs22
|
||||||
|
\fs28 = 22.7\'80\
|
||||||
|
TOTAL = 159\'80\
|
||||||
|
\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\'96\
|
||||||
|
\
|
||||||
|
Peltiers 1*7.3 = 7.3\'80\
|
||||||
|
Cooler 2*7.2 =14.4\'80\
|
||||||
|
TOTAL =21.7\'80\
|
||||||
|
\
|
||||||
|
Ruler = 1.2\'80\
|
||||||
|
\
|
||||||
|
|
||||||
|
\b \outl\strokewidth60 ================== 181.9\'80 =. 180.5\'80}
|
||||||
BIN
Low-Power-master.zip
Normal file
713
firmware/Battery_Drain_Update_1/Battery_Drain_Update_1.ino
Normal file
@ -0,0 +1,713 @@
|
|||||||
|
#include "LowPower.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() {
|
||||||
|
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(19200);
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
DidActionTakePlace();
|
||||||
|
ChechChg();
|
||||||
|
|
||||||
|
if (i>5000 && IsPowerOn == 1){
|
||||||
|
CheckVoltage();}
|
||||||
|
i++;
|
||||||
|
|
||||||
|
if (isCharging == 0 && IsPowerOn == 0){
|
||||||
|
LowPower.powerDown(SLEEP_2S, ADC_OFF, BOD_OFF);
|
||||||
|
}
|
||||||
|
|
||||||
|
//Serial.println(voltage);
|
||||||
|
|
||||||
|
}
|
||||||
|
void BlinkPow() {
|
||||||
|
|
||||||
|
delay(200);
|
||||||
|
analogWrite(PWRLED, 0.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.02); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.67); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.30); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 10.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 13.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 14.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 15.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 16.41); delay(12);
|
||||||
|
analogWrite(PWRLED, 17.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 18.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 19.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 20.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 21.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 22.97); delay(12);
|
||||||
|
analogWrite(PWRLED, 24.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 25.36); delay(12);
|
||||||
|
analogWrite(PWRLED, 26.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 28.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 29.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 30.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 32.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 33.93); delay(12);
|
||||||
|
analogWrite(PWRLED, 35.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 37.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 38.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 40.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 42.35); delay(12);
|
||||||
|
analogWrite(PWRLED, 44.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 46.18); delay(12);
|
||||||
|
analogWrite(PWRLED, 48.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 49.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 52.06); delay(12);
|
||||||
|
analogWrite(PWRLED, 54.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 56.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 58.57); delay(12);
|
||||||
|
analogWrite(PWRLED, 60.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 63.30); delay(12);
|
||||||
|
analogWrite(PWRLED, 65.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 67.93); delay(12);
|
||||||
|
analogWrite(PWRLED, 70.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 73.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 75.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 78.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 80.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 83.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 86.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 89.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 92.35); delay(12);
|
||||||
|
analogWrite(PWRLED, 95.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 98.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 101.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 105.41); delay(12);
|
||||||
|
analogWrite(PWRLED, 108.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 112.71); delay(12);
|
||||||
|
analogWrite(PWRLED, 116.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 120.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 124.19); delay(12);
|
||||||
|
analogWrite(PWRLED, 127.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 131.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 136.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 139.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 144.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 148.26); delay(12);
|
||||||
|
analogWrite(PWRLED, 152.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 156.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 160.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 164.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 168.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 172.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 177.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 181.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 185.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 189.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 192.94); delay(12);
|
||||||
|
analogWrite(PWRLED, 196.89); delay(12);
|
||||||
|
analogWrite(PWRLED, 200.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 204.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 208.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 211.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 215.27); delay(12);
|
||||||
|
analogWrite(PWRLED, 218.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 221.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 224.83); delay(12);
|
||||||
|
analogWrite(PWRLED, 227.90); delay(12);
|
||||||
|
analogWrite(PWRLED, 230.83); delay(12);
|
||||||
|
analogWrite(PWRLED, 233.46); delay(12);
|
||||||
|
analogWrite(PWRLED, 236.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 238.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 240.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 242.90); delay(12);
|
||||||
|
analogWrite(PWRLED, 244.87); delay(12);
|
||||||
|
analogWrite(PWRLED, 246.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 248.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 249.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 250.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 251.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.21); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.8); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.79); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.68); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.79); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 251.06); delay(12);
|
||||||
|
analogWrite(PWRLED, 249.96); delay(12);
|
||||||
|
analogWrite(PWRLED, 248.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 247.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 245.31); delay(12);
|
||||||
|
analogWrite(PWRLED, 243.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 241.53); delay(12);
|
||||||
|
analogWrite(PWRLED, 239.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 236.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 234.25); delay(12);
|
||||||
|
analogWrite(PWRLED, 231.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 228.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 225.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 222.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 219.49); delay(12);
|
||||||
|
analogWrite(PWRLED, 216.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 212.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 208.96); delay(12);
|
||||||
|
analogWrite(PWRLED, 205.47); delay(12);
|
||||||
|
analogWrite(PWRLED, 201.91); delay(12);
|
||||||
|
analogWrite(PWRLED, 197.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 194.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 190.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 186.31); delay(12);
|
||||||
|
analogWrite(PWRLED, 182.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 178.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 174.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 169.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 165.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 161.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 157.64); delay(12);
|
||||||
|
analogWrite(PWRLED, 153.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 149.24); delay(12);
|
||||||
|
analogWrite(PWRLED, 145.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 141.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 137.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 133.19); delay(12);
|
||||||
|
analogWrite(PWRLED, 129.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 125.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 121.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 117.47); delay(12);
|
||||||
|
analogWrite(PWRLED, 113.61); delay(12);
|
||||||
|
analogWrite(PWRLED, 110.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 106.28); delay(12);
|
||||||
|
analogWrite(PWRLED, 102.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 98.97); delay(12);
|
||||||
|
analogWrite(PWRLED, 96.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 93.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 89.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 87.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 84.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 81.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 78.74); delay(12);
|
||||||
|
analogWrite(PWRLED, 76.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 73.48); delay(12);
|
||||||
|
analogWrite(PWRLED, 71.02); delay(12);
|
||||||
|
analogWrite(PWRLED, 68.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 65.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 63.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 61.38); delay(12);
|
||||||
|
analogWrite(PWRLED, 58.88); delay(12);
|
||||||
|
analogWrite(PWRLED, 56.74); delay(12);
|
||||||
|
analogWrite(PWRLED, 54.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 52.49); delay(12);
|
||||||
|
analogWrite(PWRLED, 50.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 48.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 46.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 44.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 42.72); delay(12);
|
||||||
|
analogWrite(PWRLED, 40.88); delay(12);
|
||||||
|
analogWrite(PWRLED, 39.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 37.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 35.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 34.25); delay(12);
|
||||||
|
analogWrite(PWRLED, 32.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 31.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 29.73); delay(12);
|
||||||
|
analogWrite(PWRLED, 28.29); delay(12);
|
||||||
|
analogWrite(PWRLED, 26.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 25.71); delay(12);
|
||||||
|
analogWrite(PWRLED, 24.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 23.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 21.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 20.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 19.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 18.64); delay(12);
|
||||||
|
analogWrite(PWRLED, 17.57); delay(12);
|
||||||
|
analogWrite(PWRLED, 16.61); delay(12);
|
||||||
|
analogWrite(PWRLED, 15.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 14.67); delay(12);
|
||||||
|
analogWrite(PWRLED, 13.82); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 10.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.68); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.87); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.02); delay(12);
|
||||||
|
}
|
||||||
|
void BlinkChg() {
|
||||||
|
delay(200);
|
||||||
|
analogWrite(CHGLED, 0.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.02); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.67); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.30); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 10.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 13.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 14.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 15.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 16.41); delay(12);
|
||||||
|
analogWrite(CHGLED, 17.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 18.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 19.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 20.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 21.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 22.97); delay(12);
|
||||||
|
analogWrite(CHGLED, 24.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 25.36); delay(12);
|
||||||
|
analogWrite(CHGLED, 26.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 28.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 29.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 30.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 32.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 33.93); delay(12);
|
||||||
|
analogWrite(CHGLED, 35.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 37.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 38.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 40.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 42.35); delay(12);
|
||||||
|
analogWrite(CHGLED, 44.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 46.18); delay(12);
|
||||||
|
analogWrite(CHGLED, 48.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 49.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 52.06); delay(12);
|
||||||
|
analogWrite(CHGLED, 54.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 56.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 58.57); delay(12);
|
||||||
|
analogWrite(CHGLED, 60.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 63.30); delay(12);
|
||||||
|
analogWrite(CHGLED, 65.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 67.93); delay(12);
|
||||||
|
analogWrite(CHGLED, 70.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 73.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 75.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 78.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 80.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 83.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 86.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 89.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 92.35); delay(12);
|
||||||
|
analogWrite(CHGLED, 95.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 98.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 101.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 105.41); delay(12);
|
||||||
|
analogWrite(CHGLED, 108.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 112.71); delay(12);
|
||||||
|
analogWrite(CHGLED, 116.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 120.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 124.19); delay(12);
|
||||||
|
analogWrite(CHGLED, 127.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 131.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 136.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 139.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 144.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 148.26); delay(12);
|
||||||
|
analogWrite(CHGLED, 152.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 156.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 160.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 164.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 168.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 172.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 177.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 181.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 185.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 189.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 192.94); delay(12);
|
||||||
|
analogWrite(CHGLED, 196.89); delay(12);
|
||||||
|
analogWrite(CHGLED, 200.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 204.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 208.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 211.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 215.27); delay(12);
|
||||||
|
analogWrite(CHGLED, 218.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 221.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 224.83); delay(12);
|
||||||
|
analogWrite(CHGLED, 227.90); delay(12);
|
||||||
|
analogWrite(CHGLED, 230.83); delay(12);
|
||||||
|
analogWrite(CHGLED, 233.46); delay(12);
|
||||||
|
analogWrite(CHGLED, 236.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 238.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 240.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 242.90); delay(12);
|
||||||
|
analogWrite(CHGLED, 244.87); delay(12);
|
||||||
|
analogWrite(CHGLED, 246.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 248.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 249.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 250.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 251.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.21); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.8); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.79); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.68); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.79); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 251.06); delay(12);
|
||||||
|
analogWrite(CHGLED, 249.96); delay(12);
|
||||||
|
analogWrite(CHGLED, 248.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 247.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 245.31); delay(12);
|
||||||
|
analogWrite(CHGLED, 243.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 241.53); delay(12);
|
||||||
|
analogWrite(CHGLED, 239.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 236.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 234.25); delay(12);
|
||||||
|
analogWrite(CHGLED, 231.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 228.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 225.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 222.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 219.49); delay(12);
|
||||||
|
analogWrite(CHGLED, 216.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 212.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 208.96); delay(12);
|
||||||
|
analogWrite(CHGLED, 205.47); delay(12);
|
||||||
|
analogWrite(CHGLED, 201.91); delay(12);
|
||||||
|
analogWrite(CHGLED, 197.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 194.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 190.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 186.31); delay(12);
|
||||||
|
analogWrite(CHGLED, 182.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 178.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 174.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 169.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 165.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 161.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 157.64); delay(12);
|
||||||
|
analogWrite(CHGLED, 153.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 149.24); delay(12);
|
||||||
|
analogWrite(CHGLED, 145.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 141.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 137.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 133.19); delay(12);
|
||||||
|
analogWrite(CHGLED, 129.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 125.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 121.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 117.47); delay(12);
|
||||||
|
analogWrite(CHGLED, 113.61); delay(12);
|
||||||
|
analogWrite(CHGLED, 110.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 106.28); delay(12);
|
||||||
|
analogWrite(CHGLED, 102.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 98.97); delay(12);
|
||||||
|
analogWrite(CHGLED, 96.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 93.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 89.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 87.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 84.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 81.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 78.74); delay(12);
|
||||||
|
analogWrite(CHGLED, 76.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 73.48); delay(12);
|
||||||
|
analogWrite(CHGLED, 71.02); delay(12);
|
||||||
|
analogWrite(CHGLED, 68.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 65.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 63.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 61.38); delay(12);
|
||||||
|
analogWrite(CHGLED, 58.88); delay(12);
|
||||||
|
analogWrite(CHGLED, 56.74); delay(12);
|
||||||
|
analogWrite(CHGLED, 54.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 52.49); delay(12);
|
||||||
|
analogWrite(CHGLED, 50.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 48.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 46.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 44.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 42.72); delay(12);
|
||||||
|
analogWrite(CHGLED, 40.88); delay(12);
|
||||||
|
analogWrite(CHGLED, 39.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 37.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 35.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 34.25); delay(12);
|
||||||
|
analogWrite(CHGLED, 32.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 31.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 29.73); delay(12);
|
||||||
|
analogWrite(CHGLED, 28.29); delay(12);
|
||||||
|
analogWrite(CHGLED, 26.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 25.71); delay(12);
|
||||||
|
analogWrite(CHGLED, 24.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 23.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 21.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 20.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 19.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 18.64); delay(12);
|
||||||
|
analogWrite(CHGLED, 17.57); delay(12);
|
||||||
|
analogWrite(CHGLED, 16.61); delay(12);
|
||||||
|
analogWrite(CHGLED, 15.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 14.67); delay(12);
|
||||||
|
analogWrite(CHGLED, 13.82); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 10.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.68); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.87); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.02); delay(12);
|
||||||
|
|
||||||
|
}
|
||||||
|
void DidActionTakePlace() {
|
||||||
|
buttonPState = digitalRead(PWRBTN);
|
||||||
|
if(buttonPState == LOW){
|
||||||
|
delay(100);
|
||||||
|
if(buttonPState == LOW){
|
||||||
|
if(IsPowerOn == 0){TurnOn();}
|
||||||
|
else{TurnOff();}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
buttonCState = digitalRead(CHGBTN);
|
||||||
|
if(buttonCState == LOW){
|
||||||
|
DisplayBattTings();}
|
||||||
|
}
|
||||||
|
void TurnOn() {
|
||||||
|
BlinkPow();
|
||||||
|
digitalWrite(PWRMFT, HIGH);
|
||||||
|
IsPowerOn = 1;
|
||||||
|
}
|
||||||
|
void TurnOff() {
|
||||||
|
BlinkPow();
|
||||||
|
digitalWrite(PWRMFT, LOW);
|
||||||
|
IsPowerOn = 0;
|
||||||
|
}
|
||||||
|
void DisplayBattTings() {
|
||||||
|
BlinkChg();
|
||||||
|
GetVoltage();
|
||||||
|
if(IsPowerOn == 0){CapAtOff();}
|
||||||
|
else{CapAtOn();}
|
||||||
|
}
|
||||||
|
void CapAtOff () {
|
||||||
|
if(voltage > 3.60){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.70){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.75){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.85){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.10){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
if(voltage < 3.25){
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
digitalWrite(LED1, HIGH); delay(200); digitalWrite(LED1, LOW); delay(200); }
|
||||||
|
}
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
void CapAtOn () {
|
||||||
|
if(voltage > 3.40){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.60){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.65){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.75){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.00){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
if(voltage < 3.25){
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
digitalWrite(LED1, HIGH); delay(200); digitalWrite(LED1, LOW); delay(200); }
|
||||||
|
}
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
void CapAtCharge(){
|
||||||
|
delay(500);
|
||||||
|
if(voltage >= 4.185){digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);}
|
||||||
|
if(voltage < 4.185){
|
||||||
|
if(voltage > 3.40){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.60){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.70){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.00){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.17){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
delay(500);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);}
|
||||||
|
}
|
||||||
|
void ChechChg(){
|
||||||
|
if((analogRead(IN1) > 700) || (analogRead(IN2) > 700)){
|
||||||
|
isCharging = 1;
|
||||||
|
GetVoltage();
|
||||||
|
CapAtCharge();
|
||||||
|
}
|
||||||
|
if((analogRead(IN1) < 700) && (analogRead(IN2) < 700)){
|
||||||
|
isCharging = 0;
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void CheckVoltage(){
|
||||||
|
GetVoltage();
|
||||||
|
if(voltage < 3.20){
|
||||||
|
delay(50);
|
||||||
|
if(voltage < 3.20){
|
||||||
|
digitalWrite(LED1, HIGH);digitalWrite(LED2, HIGH);digitalWrite(LED3, HIGH);digitalWrite(LED4, HIGH);digitalWrite(LED5, HIGH);
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
TurnOff();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void GetVoltage(){
|
||||||
|
for (int q = 0; q < 10; q++) {
|
||||||
|
countVal = countVal + analogRead(VIN);
|
||||||
|
delay(5);
|
||||||
|
}
|
||||||
|
sensorVal = countVal / 10;
|
||||||
|
voltage = sensorVal * (5.10 / 1023.0);
|
||||||
|
countVal = 0;
|
||||||
|
}
|
||||||
79
firmware/Debug/Debug.ino
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
#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;
|
||||||
|
}
|
||||||
@ -0,0 +1,720 @@
|
|||||||
|
#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() {
|
||||||
|
DidActionTakePlace();
|
||||||
|
ChechChg();
|
||||||
|
|
||||||
|
if (i>5000 && IsPowerOn == 1){
|
||||||
|
CheckVoltage();}
|
||||||
|
i++;
|
||||||
|
|
||||||
|
if (isCharging == 0 && IsPowerOn == 0){
|
||||||
|
LowPower.powerDown(SLEEP_2S, ADC_OFF, BOD_OFF);
|
||||||
|
}
|
||||||
|
wdt_reset();
|
||||||
|
|
||||||
|
//Serial.println(voltage);
|
||||||
|
|
||||||
|
}
|
||||||
|
void BlinkPow() {
|
||||||
|
|
||||||
|
delay(200);
|
||||||
|
analogWrite(PWRLED, 0.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.02); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.67); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.30); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 10.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 13.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 14.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 15.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 16.41); delay(12);
|
||||||
|
analogWrite(PWRLED, 17.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 18.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 19.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 20.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 21.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 22.97); delay(12);
|
||||||
|
analogWrite(PWRLED, 24.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 25.36); delay(12);
|
||||||
|
analogWrite(PWRLED, 26.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 28.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 29.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 30.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 32.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 33.93); delay(12);
|
||||||
|
analogWrite(PWRLED, 35.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 37.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 38.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 40.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 42.35); delay(12);
|
||||||
|
analogWrite(PWRLED, 44.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 46.18); delay(12);
|
||||||
|
analogWrite(PWRLED, 48.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 49.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 52.06); delay(12);
|
||||||
|
analogWrite(PWRLED, 54.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 56.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 58.57); delay(12);
|
||||||
|
analogWrite(PWRLED, 60.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 63.30); delay(12);
|
||||||
|
analogWrite(PWRLED, 65.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 67.93); delay(12);
|
||||||
|
analogWrite(PWRLED, 70.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 73.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 75.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 78.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 80.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 83.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 86.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 89.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 92.35); delay(12);
|
||||||
|
analogWrite(PWRLED, 95.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 98.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 101.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 105.41); delay(12);
|
||||||
|
analogWrite(PWRLED, 108.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 112.71); delay(12);
|
||||||
|
analogWrite(PWRLED, 116.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 120.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 124.19); delay(12);
|
||||||
|
analogWrite(PWRLED, 127.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 131.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 136.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 139.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 144.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 148.26); delay(12);
|
||||||
|
analogWrite(PWRLED, 152.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 156.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 160.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 164.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 168.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 172.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 177.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 181.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 185.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 189.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 192.94); delay(12);
|
||||||
|
analogWrite(PWRLED, 196.89); delay(12);
|
||||||
|
analogWrite(PWRLED, 200.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 204.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 208.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 211.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 215.27); delay(12);
|
||||||
|
analogWrite(PWRLED, 218.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 221.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 224.83); delay(12);
|
||||||
|
analogWrite(PWRLED, 227.90); delay(12);
|
||||||
|
analogWrite(PWRLED, 230.83); delay(12);
|
||||||
|
analogWrite(PWRLED, 233.46); delay(12);
|
||||||
|
analogWrite(PWRLED, 236.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 238.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 240.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 242.90); delay(12);
|
||||||
|
analogWrite(PWRLED, 244.87); delay(12);
|
||||||
|
analogWrite(PWRLED, 246.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 248.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 249.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 250.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 251.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.21); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.8); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.79); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.68); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.79); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 251.06); delay(12);
|
||||||
|
analogWrite(PWRLED, 249.96); delay(12);
|
||||||
|
analogWrite(PWRLED, 248.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 247.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 245.31); delay(12);
|
||||||
|
analogWrite(PWRLED, 243.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 241.53); delay(12);
|
||||||
|
analogWrite(PWRLED, 239.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 236.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 234.25); delay(12);
|
||||||
|
analogWrite(PWRLED, 231.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 228.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 225.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 222.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 219.49); delay(12);
|
||||||
|
analogWrite(PWRLED, 216.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 212.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 208.96); delay(12);
|
||||||
|
analogWrite(PWRLED, 205.47); delay(12);
|
||||||
|
analogWrite(PWRLED, 201.91); delay(12);
|
||||||
|
analogWrite(PWRLED, 197.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 194.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 190.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 186.31); delay(12);
|
||||||
|
analogWrite(PWRLED, 182.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 178.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 174.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 169.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 165.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 161.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 157.64); delay(12);
|
||||||
|
analogWrite(PWRLED, 153.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 149.24); delay(12);
|
||||||
|
analogWrite(PWRLED, 145.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 141.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 137.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 133.19); delay(12);
|
||||||
|
analogWrite(PWRLED, 129.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 125.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 121.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 117.47); delay(12);
|
||||||
|
analogWrite(PWRLED, 113.61); delay(12);
|
||||||
|
analogWrite(PWRLED, 110.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 106.28); delay(12);
|
||||||
|
analogWrite(PWRLED, 102.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 98.97); delay(12);
|
||||||
|
analogWrite(PWRLED, 96.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 93.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 89.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 87.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 84.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 81.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 78.74); delay(12);
|
||||||
|
analogWrite(PWRLED, 76.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 73.48); delay(12);
|
||||||
|
analogWrite(PWRLED, 71.02); delay(12);
|
||||||
|
analogWrite(PWRLED, 68.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 65.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 63.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 61.38); delay(12);
|
||||||
|
analogWrite(PWRLED, 58.88); delay(12);
|
||||||
|
analogWrite(PWRLED, 56.74); delay(12);
|
||||||
|
analogWrite(PWRLED, 54.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 52.49); delay(12);
|
||||||
|
analogWrite(PWRLED, 50.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 48.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 46.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 44.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 42.72); delay(12);
|
||||||
|
analogWrite(PWRLED, 40.88); delay(12);
|
||||||
|
analogWrite(PWRLED, 39.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 37.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 35.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 34.25); delay(12);
|
||||||
|
analogWrite(PWRLED, 32.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 31.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 29.73); delay(12);
|
||||||
|
analogWrite(PWRLED, 28.29); delay(12);
|
||||||
|
analogWrite(PWRLED, 26.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 25.71); delay(12);
|
||||||
|
analogWrite(PWRLED, 24.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 23.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 21.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 20.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 19.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 18.64); delay(12);
|
||||||
|
analogWrite(PWRLED, 17.57); delay(12);
|
||||||
|
analogWrite(PWRLED, 16.61); delay(12);
|
||||||
|
analogWrite(PWRLED, 15.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 14.67); delay(12);
|
||||||
|
analogWrite(PWRLED, 13.82); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 10.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.68); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.87); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.02); delay(12);
|
||||||
|
wdt_reset();
|
||||||
|
|
||||||
|
}
|
||||||
|
void BlinkChg() {
|
||||||
|
delay(200);
|
||||||
|
analogWrite(CHGLED, 0.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.02); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.67); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.30); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 10.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 13.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 14.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 15.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 16.41); delay(12);
|
||||||
|
analogWrite(CHGLED, 17.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 18.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 19.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 20.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 21.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 22.97); delay(12);
|
||||||
|
analogWrite(CHGLED, 24.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 25.36); delay(12);
|
||||||
|
analogWrite(CHGLED, 26.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 28.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 29.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 30.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 32.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 33.93); delay(12);
|
||||||
|
analogWrite(CHGLED, 35.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 37.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 38.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 40.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 42.35); delay(12);
|
||||||
|
analogWrite(CHGLED, 44.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 46.18); delay(12);
|
||||||
|
analogWrite(CHGLED, 48.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 49.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 52.06); delay(12);
|
||||||
|
analogWrite(CHGLED, 54.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 56.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 58.57); delay(12);
|
||||||
|
analogWrite(CHGLED, 60.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 63.30); delay(12);
|
||||||
|
analogWrite(CHGLED, 65.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 67.93); delay(12);
|
||||||
|
analogWrite(CHGLED, 70.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 73.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 75.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 78.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 80.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 83.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 86.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 89.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 92.35); delay(12);
|
||||||
|
analogWrite(CHGLED, 95.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 98.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 101.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 105.41); delay(12);
|
||||||
|
analogWrite(CHGLED, 108.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 112.71); delay(12);
|
||||||
|
analogWrite(CHGLED, 116.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 120.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 124.19); delay(12);
|
||||||
|
analogWrite(CHGLED, 127.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 131.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 136.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 139.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 144.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 148.26); delay(12);
|
||||||
|
analogWrite(CHGLED, 152.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 156.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 160.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 164.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 168.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 172.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 177.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 181.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 185.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 189.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 192.94); delay(12);
|
||||||
|
analogWrite(CHGLED, 196.89); delay(12);
|
||||||
|
analogWrite(CHGLED, 200.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 204.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 208.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 211.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 215.27); delay(12);
|
||||||
|
analogWrite(CHGLED, 218.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 221.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 224.83); delay(12);
|
||||||
|
analogWrite(CHGLED, 227.90); delay(12);
|
||||||
|
analogWrite(CHGLED, 230.83); delay(12);
|
||||||
|
analogWrite(CHGLED, 233.46); delay(12);
|
||||||
|
analogWrite(CHGLED, 236.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 238.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 240.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 242.90); delay(12);
|
||||||
|
analogWrite(CHGLED, 244.87); delay(12);
|
||||||
|
analogWrite(CHGLED, 246.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 248.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 249.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 250.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 251.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.21); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.8); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.79); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.68); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.79); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 251.06); delay(12);
|
||||||
|
analogWrite(CHGLED, 249.96); delay(12);
|
||||||
|
analogWrite(CHGLED, 248.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 247.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 245.31); delay(12);
|
||||||
|
analogWrite(CHGLED, 243.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 241.53); delay(12);
|
||||||
|
analogWrite(CHGLED, 239.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 236.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 234.25); delay(12);
|
||||||
|
analogWrite(CHGLED, 231.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 228.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 225.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 222.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 219.49); delay(12);
|
||||||
|
analogWrite(CHGLED, 216.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 212.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 208.96); delay(12);
|
||||||
|
analogWrite(CHGLED, 205.47); delay(12);
|
||||||
|
analogWrite(CHGLED, 201.91); delay(12);
|
||||||
|
analogWrite(CHGLED, 197.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 194.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 190.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 186.31); delay(12);
|
||||||
|
analogWrite(CHGLED, 182.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 178.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 174.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 169.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 165.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 161.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 157.64); delay(12);
|
||||||
|
analogWrite(CHGLED, 153.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 149.24); delay(12);
|
||||||
|
analogWrite(CHGLED, 145.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 141.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 137.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 133.19); delay(12);
|
||||||
|
analogWrite(CHGLED, 129.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 125.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 121.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 117.47); delay(12);
|
||||||
|
analogWrite(CHGLED, 113.61); delay(12);
|
||||||
|
analogWrite(CHGLED, 110.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 106.28); delay(12);
|
||||||
|
analogWrite(CHGLED, 102.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 98.97); delay(12);
|
||||||
|
analogWrite(CHGLED, 96.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 93.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 89.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 87.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 84.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 81.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 78.74); delay(12);
|
||||||
|
analogWrite(CHGLED, 76.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 73.48); delay(12);
|
||||||
|
analogWrite(CHGLED, 71.02); delay(12);
|
||||||
|
analogWrite(CHGLED, 68.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 65.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 63.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 61.38); delay(12);
|
||||||
|
analogWrite(CHGLED, 58.88); delay(12);
|
||||||
|
analogWrite(CHGLED, 56.74); delay(12);
|
||||||
|
analogWrite(CHGLED, 54.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 52.49); delay(12);
|
||||||
|
analogWrite(CHGLED, 50.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 48.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 46.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 44.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 42.72); delay(12);
|
||||||
|
analogWrite(CHGLED, 40.88); delay(12);
|
||||||
|
analogWrite(CHGLED, 39.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 37.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 35.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 34.25); delay(12);
|
||||||
|
analogWrite(CHGLED, 32.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 31.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 29.73); delay(12);
|
||||||
|
analogWrite(CHGLED, 28.29); delay(12);
|
||||||
|
analogWrite(CHGLED, 26.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 25.71); delay(12);
|
||||||
|
analogWrite(CHGLED, 24.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 23.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 21.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 20.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 19.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 18.64); delay(12);
|
||||||
|
analogWrite(CHGLED, 17.57); delay(12);
|
||||||
|
analogWrite(CHGLED, 16.61); delay(12);
|
||||||
|
analogWrite(CHGLED, 15.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 14.67); delay(12);
|
||||||
|
analogWrite(CHGLED, 13.82); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 10.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.68); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.87); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.02); delay(12);
|
||||||
|
wdt_reset();
|
||||||
|
|
||||||
|
}
|
||||||
|
void DidActionTakePlace() {
|
||||||
|
buttonPState = digitalRead(PWRBTN);
|
||||||
|
if(buttonPState == LOW){
|
||||||
|
delay(100);
|
||||||
|
if(buttonPState == LOW){
|
||||||
|
if(IsPowerOn == 0){TurnOn();}
|
||||||
|
else{TurnOff();}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
buttonCState = digitalRead(CHGBTN);
|
||||||
|
if(buttonCState == LOW){
|
||||||
|
DisplayBattTings();}
|
||||||
|
}
|
||||||
|
void TurnOn() {
|
||||||
|
BlinkPow();
|
||||||
|
digitalWrite(PWRMFT, HIGH);
|
||||||
|
IsPowerOn = 1;
|
||||||
|
}
|
||||||
|
void TurnOff() {
|
||||||
|
BlinkPow();
|
||||||
|
digitalWrite(PWRMFT, LOW);
|
||||||
|
IsPowerOn = 0;
|
||||||
|
}
|
||||||
|
void DisplayBattTings() {
|
||||||
|
BlinkChg();
|
||||||
|
GetVoltage();
|
||||||
|
if(IsPowerOn == 0){CapAtOff();}
|
||||||
|
else{CapAtOn();}
|
||||||
|
}
|
||||||
|
void CapAtOff () {
|
||||||
|
if(voltage > 3.60){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.70){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.75){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.85){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.10){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
if(voltage < 3.25){
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
digitalWrite(LED1, HIGH); delay(200); digitalWrite(LED1, LOW); delay(200); }
|
||||||
|
}
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
void CapAtOn () {
|
||||||
|
if(voltage > 3.40){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.60){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.65){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.75){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.00){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
if(voltage < 3.25){
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
digitalWrite(LED1, HIGH); delay(200); digitalWrite(LED1, LOW); delay(200); }
|
||||||
|
}
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
void CapAtCharge(){
|
||||||
|
delay(500);
|
||||||
|
if(voltage >= 4.185){digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);}
|
||||||
|
if(voltage < 4.185){
|
||||||
|
if(voltage > 3.40){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.60){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.70){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.00){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.17){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
delay(500);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);}
|
||||||
|
}
|
||||||
|
void ChechChg(){
|
||||||
|
if((analogRead(IN1) > 700) || (analogRead(IN2) > 700)){
|
||||||
|
isCharging = 1;
|
||||||
|
GetVoltage();
|
||||||
|
CapAtCharge();
|
||||||
|
}
|
||||||
|
if((analogRead(IN1) < 700) && (analogRead(IN2) < 700)){
|
||||||
|
isCharging = 0;
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void CheckVoltage(){
|
||||||
|
GetVoltage();
|
||||||
|
if(voltage < 3.20){
|
||||||
|
delay(50);
|
||||||
|
if(voltage < 3.20){
|
||||||
|
digitalWrite(LED1, HIGH);digitalWrite(LED2, HIGH);digitalWrite(LED3, HIGH);digitalWrite(LED4, HIGH);digitalWrite(LED5, HIGH);
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
TurnOff();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void GetVoltage(){
|
||||||
|
for (int q = 0; q < 10; q++) {
|
||||||
|
countVal = countVal + analogRead(VIN);
|
||||||
|
delay(5);
|
||||||
|
}
|
||||||
|
sensorVal = countVal / 10;
|
||||||
|
voltage = sensorVal * (5.10 / 1023.0);
|
||||||
|
countVal = 0;
|
||||||
|
}
|
||||||
707
firmware/PROJECT_POWER/PROJECT_POWER.ino
Executable file
@ -0,0 +1,707 @@
|
|||||||
|
#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() {
|
||||||
|
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(19200);
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
DidActionTakePlace();
|
||||||
|
ChechChg();
|
||||||
|
|
||||||
|
if (i>5000 && IsPowerOn == 1){
|
||||||
|
CheckVoltage();}
|
||||||
|
i++;
|
||||||
|
|
||||||
|
//Serial.println(voltage);
|
||||||
|
|
||||||
|
}
|
||||||
|
void BlinkPow() {
|
||||||
|
|
||||||
|
delay(200);
|
||||||
|
analogWrite(PWRLED, 0.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.02); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.67); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.30); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.00); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 10.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 13.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 14.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 15.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 16.41); delay(12);
|
||||||
|
analogWrite(PWRLED, 17.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 18.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 19.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 20.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 21.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 22.97); delay(12);
|
||||||
|
analogWrite(PWRLED, 24.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 25.36); delay(12);
|
||||||
|
analogWrite(PWRLED, 26.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 28.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 29.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 30.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 32.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 33.93); delay(12);
|
||||||
|
analogWrite(PWRLED, 35.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 37.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 38.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 40.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 42.35); delay(12);
|
||||||
|
analogWrite(PWRLED, 44.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 46.18); delay(12);
|
||||||
|
analogWrite(PWRLED, 48.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 49.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 52.06); delay(12);
|
||||||
|
analogWrite(PWRLED, 54.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 56.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 58.57); delay(12);
|
||||||
|
analogWrite(PWRLED, 60.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 63.30); delay(12);
|
||||||
|
analogWrite(PWRLED, 65.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 67.93); delay(12);
|
||||||
|
analogWrite(PWRLED, 70.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 73.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 75.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 78.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 80.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 83.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 86.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 89.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 92.35); delay(12);
|
||||||
|
analogWrite(PWRLED, 95.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 98.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 101.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 105.41); delay(12);
|
||||||
|
analogWrite(PWRLED, 108.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 112.71); delay(12);
|
||||||
|
analogWrite(PWRLED, 116.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 120.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 124.19); delay(12);
|
||||||
|
analogWrite(PWRLED, 127.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 131.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 136.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 139.95); delay(12);
|
||||||
|
analogWrite(PWRLED, 144.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 148.26); delay(12);
|
||||||
|
analogWrite(PWRLED, 152.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 156.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 160.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 164.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 168.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 172.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 177.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 181.01); delay(12);
|
||||||
|
analogWrite(PWRLED, 185.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 189.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 192.94); delay(12);
|
||||||
|
analogWrite(PWRLED, 196.89); delay(12);
|
||||||
|
analogWrite(PWRLED, 200.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 204.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 208.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 211.52); delay(12);
|
||||||
|
analogWrite(PWRLED, 215.27); delay(12);
|
||||||
|
analogWrite(PWRLED, 218.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 221.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 224.83); delay(12);
|
||||||
|
analogWrite(PWRLED, 227.90); delay(12);
|
||||||
|
analogWrite(PWRLED, 230.83); delay(12);
|
||||||
|
analogWrite(PWRLED, 233.46); delay(12);
|
||||||
|
analogWrite(PWRLED, 236.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 238.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 240.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 242.90); delay(12);
|
||||||
|
analogWrite(PWRLED, 244.87); delay(12);
|
||||||
|
analogWrite(PWRLED, 246.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 248.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 249.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 250.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 251.76); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.59); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.21); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.8); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.54); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.79); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.68); delay(12);
|
||||||
|
analogWrite(PWRLED, 253.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.79); delay(12);
|
||||||
|
analogWrite(PWRLED, 252.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 251.06); delay(12);
|
||||||
|
analogWrite(PWRLED, 249.96); delay(12);
|
||||||
|
analogWrite(PWRLED, 248.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 247.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 245.31); delay(12);
|
||||||
|
analogWrite(PWRLED, 243.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 241.53); delay(12);
|
||||||
|
analogWrite(PWRLED, 239.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 236.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 234.25); delay(12);
|
||||||
|
analogWrite(PWRLED, 231.50); delay(12);
|
||||||
|
analogWrite(PWRLED, 228.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 225.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 222.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 219.49); delay(12);
|
||||||
|
analogWrite(PWRLED, 216.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 212.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 208.96); delay(12);
|
||||||
|
analogWrite(PWRLED, 205.47); delay(12);
|
||||||
|
analogWrite(PWRLED, 201.91); delay(12);
|
||||||
|
analogWrite(PWRLED, 197.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 194.11); delay(12);
|
||||||
|
analogWrite(PWRLED, 190.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 186.31); delay(12);
|
||||||
|
analogWrite(PWRLED, 182.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 178.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 174.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 169.75); delay(12);
|
||||||
|
analogWrite(PWRLED, 165.80); delay(12);
|
||||||
|
analogWrite(PWRLED, 161.84); delay(12);
|
||||||
|
analogWrite(PWRLED, 157.64); delay(12);
|
||||||
|
analogWrite(PWRLED, 153.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 149.24); delay(12);
|
||||||
|
analogWrite(PWRLED, 145.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 141.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 137.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 133.19); delay(12);
|
||||||
|
analogWrite(PWRLED, 129.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 125.12); delay(12);
|
||||||
|
analogWrite(PWRLED, 121.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 117.47); delay(12);
|
||||||
|
analogWrite(PWRLED, 113.61); delay(12);
|
||||||
|
analogWrite(PWRLED, 110.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 106.28); delay(12);
|
||||||
|
analogWrite(PWRLED, 102.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 98.97); delay(12);
|
||||||
|
analogWrite(PWRLED, 96.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 93.16); delay(12);
|
||||||
|
analogWrite(PWRLED, 89.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 87.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 84.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 81.55); delay(12);
|
||||||
|
analogWrite(PWRLED, 78.74); delay(12);
|
||||||
|
analogWrite(PWRLED, 76.17); delay(12);
|
||||||
|
analogWrite(PWRLED, 73.48); delay(12);
|
||||||
|
analogWrite(PWRLED, 71.02); delay(12);
|
||||||
|
analogWrite(PWRLED, 68.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 65.92); delay(12);
|
||||||
|
analogWrite(PWRLED, 63.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 61.38); delay(12);
|
||||||
|
analogWrite(PWRLED, 58.88); delay(12);
|
||||||
|
analogWrite(PWRLED, 56.74); delay(12);
|
||||||
|
analogWrite(PWRLED, 54.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 52.49); delay(12);
|
||||||
|
analogWrite(PWRLED, 50.37); delay(12);
|
||||||
|
analogWrite(PWRLED, 48.45); delay(12);
|
||||||
|
analogWrite(PWRLED, 46.44); delay(12);
|
||||||
|
analogWrite(PWRLED, 44.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 42.72); delay(12);
|
||||||
|
analogWrite(PWRLED, 40.88); delay(12);
|
||||||
|
analogWrite(PWRLED, 39.20); delay(12);
|
||||||
|
analogWrite(PWRLED, 37.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 35.78); delay(12);
|
||||||
|
analogWrite(PWRLED, 34.25); delay(12);
|
||||||
|
analogWrite(PWRLED, 32.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 31.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 29.73); delay(12);
|
||||||
|
analogWrite(PWRLED, 28.29); delay(12);
|
||||||
|
analogWrite(PWRLED, 26.98); delay(12);
|
||||||
|
analogWrite(PWRLED, 25.71); delay(12);
|
||||||
|
analogWrite(PWRLED, 24.32); delay(12);
|
||||||
|
analogWrite(PWRLED, 23.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 21.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 20.81); delay(12);
|
||||||
|
analogWrite(PWRLED, 19.66); delay(12);
|
||||||
|
analogWrite(PWRLED, 18.64); delay(12);
|
||||||
|
analogWrite(PWRLED, 17.57); delay(12);
|
||||||
|
analogWrite(PWRLED, 16.61); delay(12);
|
||||||
|
analogWrite(PWRLED, 15.62); delay(12);
|
||||||
|
analogWrite(PWRLED, 14.67); delay(12);
|
||||||
|
analogWrite(PWRLED, 13.82); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 12.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 11.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 10.60); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 9.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.68); delay(12);
|
||||||
|
analogWrite(PWRLED, 8.10); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 7.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.58); delay(12);
|
||||||
|
analogWrite(PWRLED, 6.08); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 5.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.77); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.39); delay(12);
|
||||||
|
analogWrite(PWRLED, 4.03); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.65); delay(12);
|
||||||
|
analogWrite(PWRLED, 3.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.99); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.40); delay(12);
|
||||||
|
analogWrite(PWRLED, 2.14); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.87); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.63); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.42); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.22); delay(12);
|
||||||
|
analogWrite(PWRLED, 1.04); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.85); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.70); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.56); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.43); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.33); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.23); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.15); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.09); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.05); delay(12);
|
||||||
|
analogWrite(PWRLED, 0.02); delay(12);
|
||||||
|
}
|
||||||
|
void BlinkChg() {
|
||||||
|
delay(200);
|
||||||
|
analogWrite(CHGLED, 0.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.02); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.67); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.30); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.00); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 10.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 13.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 14.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 15.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 16.41); delay(12);
|
||||||
|
analogWrite(CHGLED, 17.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 18.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 19.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 20.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 21.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 22.97); delay(12);
|
||||||
|
analogWrite(CHGLED, 24.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 25.36); delay(12);
|
||||||
|
analogWrite(CHGLED, 26.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 28.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 29.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 30.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 32.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 33.93); delay(12);
|
||||||
|
analogWrite(CHGLED, 35.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 37.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 38.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 40.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 42.35); delay(12);
|
||||||
|
analogWrite(CHGLED, 44.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 46.18); delay(12);
|
||||||
|
analogWrite(CHGLED, 48.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 49.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 52.06); delay(12);
|
||||||
|
analogWrite(CHGLED, 54.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 56.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 58.57); delay(12);
|
||||||
|
analogWrite(CHGLED, 60.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 63.30); delay(12);
|
||||||
|
analogWrite(CHGLED, 65.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 67.93); delay(12);
|
||||||
|
analogWrite(CHGLED, 70.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 73.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 75.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 78.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 80.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 83.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 86.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 89.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 92.35); delay(12);
|
||||||
|
analogWrite(CHGLED, 95.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 98.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 101.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 105.41); delay(12);
|
||||||
|
analogWrite(CHGLED, 108.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 112.71); delay(12);
|
||||||
|
analogWrite(CHGLED, 116.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 120.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 124.19); delay(12);
|
||||||
|
analogWrite(CHGLED, 127.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 131.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 136.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 139.95); delay(12);
|
||||||
|
analogWrite(CHGLED, 144.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 148.26); delay(12);
|
||||||
|
analogWrite(CHGLED, 152.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 156.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 160.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 164.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 168.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 172.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 177.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 181.01); delay(12);
|
||||||
|
analogWrite(CHGLED, 185.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 189.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 192.94); delay(12);
|
||||||
|
analogWrite(CHGLED, 196.89); delay(12);
|
||||||
|
analogWrite(CHGLED, 200.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 204.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 208.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 211.52); delay(12);
|
||||||
|
analogWrite(CHGLED, 215.27); delay(12);
|
||||||
|
analogWrite(CHGLED, 218.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 221.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 224.83); delay(12);
|
||||||
|
analogWrite(CHGLED, 227.90); delay(12);
|
||||||
|
analogWrite(CHGLED, 230.83); delay(12);
|
||||||
|
analogWrite(CHGLED, 233.46); delay(12);
|
||||||
|
analogWrite(CHGLED, 236.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 238.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 240.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 242.90); delay(12);
|
||||||
|
analogWrite(CHGLED, 244.87); delay(12);
|
||||||
|
analogWrite(CHGLED, 246.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 248.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 249.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 250.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 251.76); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.59); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.21); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.8); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.54); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.79); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.68); delay(12);
|
||||||
|
analogWrite(CHGLED, 253.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.79); delay(12);
|
||||||
|
analogWrite(CHGLED, 252.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 251.06); delay(12);
|
||||||
|
analogWrite(CHGLED, 249.96); delay(12);
|
||||||
|
analogWrite(CHGLED, 248.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 247.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 245.31); delay(12);
|
||||||
|
analogWrite(CHGLED, 243.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 241.53); delay(12);
|
||||||
|
analogWrite(CHGLED, 239.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 236.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 234.25); delay(12);
|
||||||
|
analogWrite(CHGLED, 231.50); delay(12);
|
||||||
|
analogWrite(CHGLED, 228.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 225.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 222.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 219.49); delay(12);
|
||||||
|
analogWrite(CHGLED, 216.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 212.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 208.96); delay(12);
|
||||||
|
analogWrite(CHGLED, 205.47); delay(12);
|
||||||
|
analogWrite(CHGLED, 201.91); delay(12);
|
||||||
|
analogWrite(CHGLED, 197.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 194.11); delay(12);
|
||||||
|
analogWrite(CHGLED, 190.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 186.31); delay(12);
|
||||||
|
analogWrite(CHGLED, 182.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 178.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 174.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 169.75); delay(12);
|
||||||
|
analogWrite(CHGLED, 165.80); delay(12);
|
||||||
|
analogWrite(CHGLED, 161.84); delay(12);
|
||||||
|
analogWrite(CHGLED, 157.64); delay(12);
|
||||||
|
analogWrite(CHGLED, 153.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 149.24); delay(12);
|
||||||
|
analogWrite(CHGLED, 145.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 141.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 137.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 133.19); delay(12);
|
||||||
|
analogWrite(CHGLED, 129.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 125.12); delay(12);
|
||||||
|
analogWrite(CHGLED, 121.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 117.47); delay(12);
|
||||||
|
analogWrite(CHGLED, 113.61); delay(12);
|
||||||
|
analogWrite(CHGLED, 110.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 106.28); delay(12);
|
||||||
|
analogWrite(CHGLED, 102.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 98.97); delay(12);
|
||||||
|
analogWrite(CHGLED, 96.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 93.16); delay(12);
|
||||||
|
analogWrite(CHGLED, 89.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 87.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 84.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 81.55); delay(12);
|
||||||
|
analogWrite(CHGLED, 78.74); delay(12);
|
||||||
|
analogWrite(CHGLED, 76.17); delay(12);
|
||||||
|
analogWrite(CHGLED, 73.48); delay(12);
|
||||||
|
analogWrite(CHGLED, 71.02); delay(12);
|
||||||
|
analogWrite(CHGLED, 68.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 65.92); delay(12);
|
||||||
|
analogWrite(CHGLED, 63.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 61.38); delay(12);
|
||||||
|
analogWrite(CHGLED, 58.88); delay(12);
|
||||||
|
analogWrite(CHGLED, 56.74); delay(12);
|
||||||
|
analogWrite(CHGLED, 54.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 52.49); delay(12);
|
||||||
|
analogWrite(CHGLED, 50.37); delay(12);
|
||||||
|
analogWrite(CHGLED, 48.45); delay(12);
|
||||||
|
analogWrite(CHGLED, 46.44); delay(12);
|
||||||
|
analogWrite(CHGLED, 44.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 42.72); delay(12);
|
||||||
|
analogWrite(CHGLED, 40.88); delay(12);
|
||||||
|
analogWrite(CHGLED, 39.20); delay(12);
|
||||||
|
analogWrite(CHGLED, 37.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 35.78); delay(12);
|
||||||
|
analogWrite(CHGLED, 34.25); delay(12);
|
||||||
|
analogWrite(CHGLED, 32.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 31.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 29.73); delay(12);
|
||||||
|
analogWrite(CHGLED, 28.29); delay(12);
|
||||||
|
analogWrite(CHGLED, 26.98); delay(12);
|
||||||
|
analogWrite(CHGLED, 25.71); delay(12);
|
||||||
|
analogWrite(CHGLED, 24.32); delay(12);
|
||||||
|
analogWrite(CHGLED, 23.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 21.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 20.81); delay(12);
|
||||||
|
analogWrite(CHGLED, 19.66); delay(12);
|
||||||
|
analogWrite(CHGLED, 18.64); delay(12);
|
||||||
|
analogWrite(CHGLED, 17.57); delay(12);
|
||||||
|
analogWrite(CHGLED, 16.61); delay(12);
|
||||||
|
analogWrite(CHGLED, 15.62); delay(12);
|
||||||
|
analogWrite(CHGLED, 14.67); delay(12);
|
||||||
|
analogWrite(CHGLED, 13.82); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 12.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 11.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 10.60); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 9.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.68); delay(12);
|
||||||
|
analogWrite(CHGLED, 8.10); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 7.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.58); delay(12);
|
||||||
|
analogWrite(CHGLED, 6.08); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 5.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.77); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.39); delay(12);
|
||||||
|
analogWrite(CHGLED, 4.03); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.65); delay(12);
|
||||||
|
analogWrite(CHGLED, 3.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.99); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.40); delay(12);
|
||||||
|
analogWrite(CHGLED, 2.14); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.87); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.63); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.42); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.22); delay(12);
|
||||||
|
analogWrite(CHGLED, 1.04); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.85); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.70); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.56); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.43); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.33); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.23); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.15); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.09); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.05); delay(12);
|
||||||
|
analogWrite(CHGLED, 0.02); delay(12);
|
||||||
|
|
||||||
|
}
|
||||||
|
void DidActionTakePlace() {
|
||||||
|
buttonPState = digitalRead(PWRBTN);
|
||||||
|
if(buttonPState == LOW){
|
||||||
|
delay(100);
|
||||||
|
if(buttonPState == LOW){
|
||||||
|
if(IsPowerOn == 0){TurnOn();}
|
||||||
|
else{TurnOff();}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
buttonCState = digitalRead(CHGBTN);
|
||||||
|
if(buttonCState == LOW){
|
||||||
|
DisplayBattTings();}
|
||||||
|
}
|
||||||
|
void TurnOn() {
|
||||||
|
BlinkPow();
|
||||||
|
digitalWrite(PWRMFT, HIGH);
|
||||||
|
IsPowerOn = 1;
|
||||||
|
}
|
||||||
|
void TurnOff() {
|
||||||
|
BlinkPow();
|
||||||
|
digitalWrite(PWRMFT, LOW);
|
||||||
|
IsPowerOn = 0;
|
||||||
|
}
|
||||||
|
void DisplayBattTings() {
|
||||||
|
BlinkChg();
|
||||||
|
GetVoltage();
|
||||||
|
if(IsPowerOn == 0){CapAtOff();}
|
||||||
|
else{CapAtOn();}
|
||||||
|
}
|
||||||
|
void CapAtOff () {
|
||||||
|
if(voltage > 3.60){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.70){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.75){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.85){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.10){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
if(voltage < 3.25){
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
digitalWrite(LED1, HIGH); delay(200); digitalWrite(LED1, LOW); delay(200); }
|
||||||
|
}
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
void CapAtOn () {
|
||||||
|
if(voltage > 3.40){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.60){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.65){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.75){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.00){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
if(voltage < 3.25){
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
digitalWrite(LED1, HIGH); delay(200); digitalWrite(LED1, LOW); delay(200); }
|
||||||
|
}
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
void CapAtCharge(){
|
||||||
|
delay(500);
|
||||||
|
if(voltage >= 4.185){digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);}
|
||||||
|
if(voltage < 4.185){
|
||||||
|
if(voltage > 3.40){digitalWrite(LED1, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.60){digitalWrite(LED2, HIGH); delay(500);}
|
||||||
|
if(voltage > 3.70){digitalWrite(LED3, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.00){digitalWrite(LED4, HIGH); delay(500);}
|
||||||
|
if(voltage > 4.17){digitalWrite(LED5, HIGH); delay(500);}
|
||||||
|
delay(500);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);}
|
||||||
|
}
|
||||||
|
void ChechChg(){
|
||||||
|
if((analogRead(IN1) > 700) || (analogRead(IN2) > 700)){
|
||||||
|
isCharging = 1;
|
||||||
|
GetVoltage();
|
||||||
|
CapAtCharge();
|
||||||
|
}
|
||||||
|
if((analogRead(IN1) < 700) && (analogRead(IN2) < 700)){
|
||||||
|
isCharging = 0;
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void CheckVoltage(){
|
||||||
|
GetVoltage();
|
||||||
|
if(voltage < 3.20){
|
||||||
|
delay(50);
|
||||||
|
if(voltage < 3.20){
|
||||||
|
digitalWrite(LED1, HIGH);digitalWrite(LED2, HIGH);digitalWrite(LED3, HIGH);digitalWrite(LED4, HIGH);digitalWrite(LED5, HIGH);
|
||||||
|
delay(5000);
|
||||||
|
digitalWrite(LED1, LOW);digitalWrite(LED2, LOW);digitalWrite(LED3, LOW);digitalWrite(LED4, LOW);digitalWrite(LED5, LOW);
|
||||||
|
TurnOff();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void GetVoltage(){
|
||||||
|
for (int q = 0; q < 10; q++) {
|
||||||
|
countVal = countVal + analogRead(VIN);
|
||||||
|
delay(5);
|
||||||
|
}
|
||||||
|
sensorVal = countVal / 10;
|
||||||
|
voltage = sensorVal * (5.10 / 1023.0);
|
||||||
|
countVal = 0;
|
||||||
|
}
|
||||||