Used with KL25Z Freescale board to access the Avnet Wi-Go Battery charger

Dependents:   KL25Z_Batt_Test

Committer:
monpjc
Date:
Fri May 17 15:32:44 2013 +0000
Revision:
1:4c20371cd5c2
Parent:
0:d52ea6d270c0
Child:
2:f52adda183d2
Batt init now has selectable charge rate

Who changed what in which revision?

UserRevisionLine numberNew contents of line
monpjc 0:d52ea6d270c0 1 #ifndef _WIGO_BATTCHARGER_H_
monpjc 0:d52ea6d270c0 2 #define _WIGO_BATTCHARGER_H_
monpjc 0:d52ea6d270c0 3
monpjc 0:d52ea6d270c0 4 #include "mbed.h"
monpjc 0:d52ea6d270c0 5
monpjc 0:d52ea6d270c0 6 //Battery Circuit for Avnet PCB
monpjc 0:d52ea6d270c0 7 #define BATT_FULL PTB10
monpjc 0:d52ea6d270c0 8 #define BATT_MED PTB9
monpjc 0:d52ea6d270c0 9 #define BATT_LOW PTB8
monpjc 0:d52ea6d270c0 10 #define CHRG_EN1 PTB2
monpjc 0:d52ea6d270c0 11 #define CHRG_EN2 PTB3
monpjc 0:d52ea6d270c0 12 #define CHRG_SNS_EN PTC2
monpjc 0:d52ea6d270c0 13 #define CHRG_SNS PTB1
monpjc 0:d52ea6d270c0 14 #define CHRG_POK PTC6
monpjc 0:d52ea6d270c0 15 #define CHRG_CHG PTA5
monpjc 0:d52ea6d270c0 16 #define POWER_OK 0
monpjc 0:d52ea6d270c0 17 #define CHARGING 0
monpjc 0:d52ea6d270c0 18 #define BATT_LED_ON 0
monpjc 0:d52ea6d270c0 19 #define BATT_LED_OFF 1
monpjc 0:d52ea6d270c0 20 #define BATT_0 0.53
monpjc 0:d52ea6d270c0 21 #define BATT_100 0.67
monpjc 0:d52ea6d270c0 22
monpjc 0:d52ea6d270c0 23 class WiGo_BattCharger
monpjc 0:d52ea6d270c0 24 {
monpjc 0:d52ea6d270c0 25 public:
monpjc 1:4c20371cd5c2 26
monpjc 0:d52ea6d270c0 27 WiGo_BattCharger( PinName battlow, PinName battmed, PinName battfull,
monpjc 0:d52ea6d270c0 28 PinName en1, PinName en2, PinName snsen, PinName sense,
monpjc 0:d52ea6d270c0 29 PinName supplystate, PinName chargestate );
monpjc 0:d52ea6d270c0 30
monpjc 1:4c20371cd5c2 31 void init( int n );
monpjc 0:d52ea6d270c0 32
monpjc 0:d52ea6d270c0 33 void sense_en( int n);
monpjc 0:d52ea6d270c0 34
monpjc 0:d52ea6d270c0 35 float read( void );
monpjc 0:d52ea6d270c0 36
monpjc 0:d52ea6d270c0 37 int charging( void );
monpjc 0:d52ea6d270c0 38
monpjc 0:d52ea6d270c0 39 int supply( void );
monpjc 0:d52ea6d270c0 40
monpjc 0:d52ea6d270c0 41 void LEDupdate( void );
monpjc 0:d52ea6d270c0 42
monpjc 0:d52ea6d270c0 43 protected:
monpjc 0:d52ea6d270c0 44 DigitalOut _battfull;
monpjc 0:d52ea6d270c0 45 DigitalOut _battmed;
monpjc 0:d52ea6d270c0 46 DigitalOut _battlow;
monpjc 0:d52ea6d270c0 47 DigitalOut _en1;
monpjc 0:d52ea6d270c0 48 DigitalOut _en2;
monpjc 0:d52ea6d270c0 49 DigitalOut _snsen;
monpjc 0:d52ea6d270c0 50 DigitalIn _supplystate;
monpjc 0:d52ea6d270c0 51 DigitalIn _chargestate;
monpjc 0:d52ea6d270c0 52 AnalogIn _sense;
monpjc 0:d52ea6d270c0 53 };
monpjc 0:d52ea6d270c0 54
monpjc 0:d52ea6d270c0 55 #endif