Used with KL25Z Freescale board to access the Avnet Wi-Go Battery charger
WiGo_BattCharger.cpp
- Committer:
- monpjc
- Date:
- 2013-05-17
- Revision:
- 0:d52ea6d270c0
- Child:
- 1:4c20371cd5c2
File content as of revision 0:d52ea6d270c0:
#include "WiGo_BattCharger.h" #include "mbed.h" WiGo_BattCharger::WiGo_BattCharger( PinName battlow, PinName battmed, PinName battfull, PinName en1, PinName en2, PinName snsen, PinName sense, PinName supplystate, PinName chargestate ) : _battlow(battlow), _battmed(battmed), _battfull(battfull), _en1(en1), _en2(en2), _snsen(snsen), _sense(sense), _supplystate(supplystate), _chargestate(chargestate) { _battlow = BATT_LED_OFF; //Default State _battmed = BATT_LED_OFF; _battfull = BATT_LED_OFF; _en1 = 0; //100mA Charge _en2 = 0; _snsen = 1; //Off } void WiGo_BattCharger::init( void ) { //100mA Charge _en1 = 0; _en2 = 0; } void WiGo_BattCharger::sense_en( int n) { if( n == 0 ) _snsen = 1; else _snsen = 0; } float WiGo_BattCharger::read( void ) { return _sense; } int WiGo_BattCharger::charging( void ) { return _chargestate; } int WiGo_BattCharger::supply( void ) { return _supplystate; } void WiGo_BattCharger::LEDupdate( void ) { float batt_level; init(); sense_en(1); batt_level = read(); if( batt_level <= BATT_0 ) { _battlow = BATT_LED_OFF; _battmed = BATT_LED_OFF; _battfull = BATT_LED_OFF; } if( batt_level > BATT_0 && batt_level <= 0.605 ) { _battlow = BATT_LED_ON; _battmed = BATT_LED_OFF; _battfull = BATT_LED_OFF; } if( batt_level > 0.605 && batt_level <= BATT_100 ) { _battlow = BATT_LED_ON; _battmed = BATT_LED_ON; _battfull = BATT_LED_OFF; } if( batt_level > BATT_100 ) { _battlow = BATT_LED_ON; _battmed = BATT_LED_ON; _battfull = BATT_LED_ON; } }