Used with KL25Z Freescale board to access the Avnet Wi-Go Battery charger
Dependents: Wi-Go_IOT_Demo IoT_World_Hackathon_WiGo_NSP_Demo Wi-Go_IOT_Demo_MKII
Fork of WiGo_BattCharger by
Modified BattCharger from https://mbed.org/users/monpjc/code/WiGo_BattCharger/ - removed LED pins and added raw read.
WiGo_BattCharger.cpp
- Committer:
- frankvnk
- Date:
- 2013-09-06
- Revision:
- 3:fb966ae74766
- Parent:
- 2:f52adda183d2
File content as of revision 3:fb966ae74766:
#include "WiGo_BattCharger.h" #include "mbed.h" WiGo_BattCharger::WiGo_BattCharger( PinName en1, PinName en2, PinName snsen, PinName sense, PinName supplystate, PinName chargestate ) : _en1(en1), _en2(en2), _snsen(snsen), _sense(sense), _supplystate(supplystate), _chargestate(chargestate) { _en1 = 0; //100mA Charge _en2 = 0; _snsen = 1; //Off } void WiGo_BattCharger::init( int n ) { switch(n) { default: case 0: //100mA Charge _en1 = 0; _en2 = 0; break; case 1: //500mA _en1 = 0; _en2 = 1; break; case 2: //724mA _en1 = 1; _en2 = 0; break; case 3: //Suspend _en1 = 1; _en2 = 1; break; } } void WiGo_BattCharger::sense_en( int n) { if( n == 0 ) _snsen = 1; else _snsen = 0; } unsigned short WiGo_BattCharger::readRaw( void ) { return _sense.read_u16(); } float WiGo_BattCharger::read( void ) { return _sense; } int WiGo_BattCharger::charging( void ) { return _chargestate; } int WiGo_BattCharger::supply( void ) { return _supplystate; } int WiGo_BattCharger::level( void ) { float returnValue = 0; float batt_level = read(); returnValue = ((batt_level - BATT_0) * (BATT_100 - BATT_0)) * 10000; if( returnValue > 100 ) returnValue = 100; if( returnValue < 0 ) returnValue = 0; return (int)returnValue; }