1.
Контроллер зарядки ( чип на материнке коммуникатора ) занимается только зарядкой аккума и выбором источника для питания коммуникатора - внешний источник или аккумулятор. Его задача - сформировать правильный алгоритм зарядки аккума - в два этапа
1 этап - зарядка постоянным током до предельного напряжения ( около 4,2 В ). Переключение на второй этап происходит при зарядке аккумулятора до примерно 85%
2 этап - дальнейшая зарядка производися плавно падающим током при сохранении постоянным зтого напряжения ( 4,2В ). Зарядка продолжается пока ток не упадёт до величины около 3% от первоначального ( 15 -30 мА ). Этот этап занимает около часа.
После этого зарядка полностью прекращается и снова включится только если напряжение на аккуме упадёт ниже определённого значения или переподключить внешний источник ( но в этом случае критерий полной зарядки аккума будет выполнен сразу и зарядка опять прекратится ). При таком алгоритме аккумулятор зарядится максимально полно независимо от начального тока ( может быть разным - включён или выключен коммуникатор при зарядке, от какого источника заяжается ).Чип ограничивает
ток потребления от внешнего источника :
Ток потребления от внешнего источника = ток зарядки аккумулятора + ток для работы коммуникатора
больше задействовано ресурсов - больше потребляет сам коммуникатор - меньше остаётся тока на зарядку.
Чип также контролирует температуру аккума - один из выводов на аккумуляторе это выход термистора расположенного в аккуме, по его сопротивлению контроллер зарядки и определяет температуру аккумулятора. Если ниже 0 градусов или выше заданного значениия - зарядка
аппаратно ( в чипе контроллера зарядки ) запрещена.
Т.о. контроллер зарядки контролирует только максимальное значение напряжения на аккумуляторе, не допуская его превышения. До какого напряжения разрядится аккумулятор - его не волнует. Единственно - если при зарядке контроллер обнаруживает что напряжение на аккуме меньше 3В, то сначала ток зарядки контроллер ограничит величиной не более 50 мА пока напряжение на аккуме не достигнет 3,0В. Режим ограничен по времени - таким способом определяются плохие аккумуляторы, зарядка которых номинальным током может привести к разгерметизации банки ( взрыву ). Так же этот чип никоим образом не причастен к вычислению степени заряженности аккума.
2. С выхода контроллера зарядки нестабилизированное напряжение = напряжению аккумулятора поступает на чип
менеджера питания на материнке коммуникатора, и уже этот чип выдаёт несколько стабилизированных напряжений для питания узлов коммуникатора.
Нередко нестабильная работа коммуникатора или повышеноое потребление связано с этими чипами или с их окружением ( конденсаторы, диоды и т.д. )
3.
Контроллер аккумулятора ( тот что расположен в самом аккумуляторе ) в основном необходим для защиты лит-ион банки от перенапряжения, переразрядки, коротких замыканий, переполюсовки входного напряжения. Неправильная эксплуатация лит-ион аккумуляторов ( в отличие от других типов ) может привести к печальным последствиям
Аккумуляторы КПК (Пост #2713947), поэтому для них и была придумана защита в виде контроллера аккумулятора.
Во многих случаях ( но не всегда ) в контроллер аккумулятора добавляют ещё один чип, который участвует в вычислении степени заряженности аккумулятора. Об этом более подробно по ссылке
Литиевые аккумуляторы - правила эксплуатации (Пост #2730352). Очень кратко суть: втекающий/вытекающий заряд измеряет специализированный чип в контроллере аккумулятора и передаёт информацию по однопроводному интерфейсу хосту ( коммуникатору ), драйвер обсчитывает и выдаёт %.
Если этого чипа в контроллере аккумулятора нет, степень заряженности вычисляется просто по напряжению - на материнке есть АЦП, который измеряет напряжение аккумулятора и по таблице зашитой в драйвер вычисляется степень заряженности аккума.
В большинстве современных коммуникаторов контроллеры аккумулятора имеют подобный чип. Критерий определения степени заряженности 100 % ( и зелёный индикатор ) аналогичен тому что используется в контроллере зарядки ( на примере чипа измерителя DS2780 ) : напряжение превысило максимальное значение ( порог устанавливается чуть ниже чем в контроллере зарядки ), ток зарядки постепенно уменьшается и достигает минимального уровня ( порог чуть выше чем ток при котором контроллер зарядки полностью прекращает зарядку ). Возможно там где используются другие чипы измерителя алгоритм несколько отличается. Но в любом случае - контроллер зарядки ( только он определяет как заряжать аккум и когда прекратить зарядку ) и измеритель степени заряженности ( никак не влияет когда зарядку аккумулятора закончить ) независимы друг от друга. Т.е. зелёный индикатор отнюдь не означает что зарядка полностью прекратилась ( при включённом коммуникаторе ) и наоборот: аккумулятор может быть полностью заряжен а индикатор всё никак не зеленеет ( помогает СР ).