AN2309
November 25, 2007 Document No. 001-17394 Rev. *B - 11 -
Figure 7. Temperature Profile
THOT_STOP
THOT_RESTART
TCOLD_STOP
TCOLD_RESTART
TBATT
Charge in
process
Charge in
Process
No Charge
TDISCH_COLD_STOP
TDISCH_HOT_STOP
No Discharge
No Discharge
Two-Cell Battery Charger Firmware
The two-cell battery charger firmware is separated into
several modules that serve distinct functions, such as
performing measurements, regulating the battery charge
process and timer functions, implementing the charge and
cell-balancing algorithms, checking the charge termination
conditions, storing calibration settings into the PSoC device
Flash memory, and transmitting debugging data. Most of
these modules are described in AN2107, AN2258, and
AN2294. Therefore, in this section only the charge and cell-
balancing algorithms are described.
Two-Cell Battery Charger Algorithm
The two-cell battery charge algorithm is implemented in the
charger firmware as a state machine. The following states
are used:
Initialization: Indicates charge process initialization.
Activation: Depicts battery activation charging.
Rapid: Depicts rapid battery charging.
Charge Complete: Indicates that the battery pack is
charged completely.
Wait For Temperature: Used to depict the idle state
when the battery pack temperature is outside the
allowed temperature range.
Error: Indicates that during the charge process an error
has occurred. There are three error types: over-voltage,
over-current and stage time-out exceptions.
Discharge: Indicates that the battery pack discharge
process and the storage device state are without
external power supply.
Full Discharge: Indicates that the battery pack is
discharged completely and is not suitable for further
use.
The two-cell battery charger state diagram is shown in
Figure 8 on page 12.
[+] Feedback