BatteryPanel

Committer:
williequesada
Date:
Tue Jun 04 19:25:12 2019 +0000
Revision:
0:c8cdb6bdc59d
pablo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
williequesada 0:c8cdb6bdc59d 1 #include "BatteryPanel.h"
williequesada 0:c8cdb6bdc59d 2 #include "mbed.h"
williequesada 0:c8cdb6bdc59d 3
williequesada 0:c8cdb6bdc59d 4 float ValorLectura;
williequesada 0:c8cdb6bdc59d 5 float ValorCalculado;
williequesada 0:c8cdb6bdc59d 6
williequesada 0:c8cdb6bdc59d 7 BATTERY_PANEL::BATTERY_PANEL(PinName AnalogBattery, PinName AnalogPanel, PinName Control) : _AnalogBattery(AnalogBattery), _AnalogPanel(AnalogPanel), _Control(Control)
williequesada 0:c8cdb6bdc59d 8 {
williequesada 0:c8cdb6bdc59d 9 _Control = 0;
williequesada 0:c8cdb6bdc59d 10 }
williequesada 0:c8cdb6bdc59d 11
williequesada 0:c8cdb6bdc59d 12 float BATTERY_PANEL::BatteryRead()
williequesada 0:c8cdb6bdc59d 13 {
williequesada 0:c8cdb6bdc59d 14 ValorLectura = _AnalogBattery.read(); // Read the analog input value (value from 0.0 to 1.0 = full ADC conversion range)
williequesada 0:c8cdb6bdc59d 15 ValorCalculado = ValorLectura*21.8; // Converts value in the 0V-3.3V range
williequesada 0:c8cdb6bdc59d 16 return ValorCalculado;
williequesada 0:c8cdb6bdc59d 17 }
williequesada 0:c8cdb6bdc59d 18
williequesada 0:c8cdb6bdc59d 19 float BATTERY_PANEL::PanelRead()
williequesada 0:c8cdb6bdc59d 20 {
williequesada 0:c8cdb6bdc59d 21 ValorLectura = _AnalogPanel.read(); // Read the analog input value (value from 0.0 to 1.0 = full ADC conversion range)
williequesada 0:c8cdb6bdc59d 22 ValorCalculado = ValorLectura*21.7; // Converts value in the 0V-3.3V range
williequesada 0:c8cdb6bdc59d 23 return ValorCalculado;
williequesada 0:c8cdb6bdc59d 24 }
williequesada 0:c8cdb6bdc59d 25
williequesada 0:c8cdb6bdc59d 26 float BATTERY_PANEL::BatteryAnalog()
williequesada 0:c8cdb6bdc59d 27 {
williequesada 0:c8cdb6bdc59d 28 ValorLectura = _AnalogBattery.read(); // Read the analog input value (value from 0.0 to 1.0 = full ADC conversion range)
williequesada 0:c8cdb6bdc59d 29 ValorCalculado = ValorLectura*3.3; // Converts value in the 0V-3.3V range
williequesada 0:c8cdb6bdc59d 30 return ValorCalculado;
williequesada 0:c8cdb6bdc59d 31 }
williequesada 0:c8cdb6bdc59d 32
williequesada 0:c8cdb6bdc59d 33 float BATTERY_PANEL::PanelAnalog()
williequesada 0:c8cdb6bdc59d 34 {
williequesada 0:c8cdb6bdc59d 35 ValorLectura = _AnalogPanel.read(); // Read the analog input value (value from 0.0 to 1.0 = full ADC conversion range)
williequesada 0:c8cdb6bdc59d 36 ValorCalculado = ValorLectura*3.3; // Converts value in the 0V-3.3V range
williequesada 0:c8cdb6bdc59d 37 return ValorCalculado;
williequesada 0:c8cdb6bdc59d 38 }
williequesada 0:c8cdb6bdc59d 39
williequesada 0:c8cdb6bdc59d 40 int BATTERY_PANEL::Control()
williequesada 0:c8cdb6bdc59d 41 {
williequesada 0:c8cdb6bdc59d 42 ValorLectura = _AnalogBattery.read(); // Read the analog input value (value from 0.0 to 1.0 = full ADC conversion range)
williequesada 0:c8cdb6bdc59d 43 ValorCalculado = ValorLectura*21.8;
williequesada 0:c8cdb6bdc59d 44
williequesada 0:c8cdb6bdc59d 45 if(ValorCalculado>15){
williequesada 0:c8cdb6bdc59d 46 _Control=0;
williequesada 0:c8cdb6bdc59d 47 return 2;
williequesada 0:c8cdb6bdc59d 48 } else {
williequesada 0:c8cdb6bdc59d 49 _Control=1;
williequesada 0:c8cdb6bdc59d 50 }
williequesada 0:c8cdb6bdc59d 51 if(ValorCalculado<12){
williequesada 0:c8cdb6bdc59d 52 return 0;
williequesada 0:c8cdb6bdc59d 53 }
williequesada 0:c8cdb6bdc59d 54 //_Control=!_Control;
williequesada 0:c8cdb6bdc59d 55 return 1;
williequesada 0:c8cdb6bdc59d 56 }
williequesada 0:c8cdb6bdc59d 57
williequesada 0:c8cdb6bdc59d 58 void BATTERY_PANEL::ControlOff(){
williequesada 0:c8cdb6bdc59d 59 _Control=0;
williequesada 0:c8cdb6bdc59d 60 }
williequesada 0:c8cdb6bdc59d 61
williequesada 0:c8cdb6bdc59d 62 void BATTERY_PANEL::ControlOn(){
williequesada 0:c8cdb6bdc59d 63 _Control=1;
williequesada 0:c8cdb6bdc59d 64 }
williequesada 0:c8cdb6bdc59d 65
williequesada 0:c8cdb6bdc59d 66