AN137 Silicon_Laboratories, AN137 Datasheet - Page 29

no-image

AN137

Manufacturer Part Number
AN137
Description
Lithium ION Battery Charger Using C8051f300
Manufacturer
Silicon_Laboratories
Datasheet
}
//-----------------------------------------------------------------------------
// Monitor_Battery
//-----------------------------------------------------------------------------
// This routine acts as a switch when gathering different conversion types.
// It adjusts the throughput, adjust the AMUX and returns the current in mA,
//
//
int Monitor_Battery(unsigned char value)
{
do{
}while (PCA0CPH0 < 0xF0);
// Duty Cycle is now small and safe to turn off.
PCA0CPM0 = 0x00;
char i;
unsigned long av =0;
long signed result;
ADC0CF = (SYSCLK/5000000) << 3;
ADC0CF &= 0xF8;
switch (value)
{
}
//Compute average of next 10 A/D conversions
for(av=0,i=10;i;--i){
}
case CURRENT:
if (PCA0CPH0 < 0xF0)
voltage in mV, and temperature in C, 2% accurate.
case TEMPERATURE:
case VOLTAGE:
case VOLTAGE_PWM_OFF:
AD0INT = 0;
AD0BUSY = 1;
while(!AD0INT);
av = av+ADC0;
PCA0CPH0++;
Turn_PWM_Off();
AMX0SL = TBAT;
ADC0CF |= 0x02;
break;
AMX0SL = VBAT;
ADC0CF |= 0x01;
break;
Turn_PWM_Off();
AMX0SL = VBAT;
ADC0CF |= 0x01;
break;
AMX0SL = IBAT;
ADC0CF |= 0x03;
break;
// Disable PWM
// ADC conversion clock = 5.0MHz
// Clear any Previous Gain Settings
// Turn PWM Off
// Select appropriate input for AMUX
// Set PGA gain = 2
// Select appropriate input for AMUX
// Set PGA gain = 1
// Turn PWM Off
// Select appropriate input for AMUX
// Set PGA gain = 1
// Select appropriate input for AMUX
// Set PGA gain = 4
// clear end-of-conversion indicator
// initiate conversion
// wait for conversion to complete
Rev. 1.2
AN137
29

Related parts for AN137