1 /* This file has been prepared for Doxygen automatic documentation generation.*/
\r
2 /*! \file *********************************************************************
\r
5 * NiMH specifications
\r
7 * Contains example definitions of NiMH battery specifications.
\r
9 * \par Application note:
\r
10 * AVR463: Charging NiMH Batteries with BC100
\r
12 * \par Documentation:
\r
13 * For comprehensive code documentation, supported compilers, compiler
\r
14 * settings and supported devices see readme.html
\r
17 * Atmel Corporation: http://www.atmel.com \n
\r
18 * Support email: avr@atmel.com \n
\r
19 * Original author: \n
\r
24 * $URL: http://svn.norway.atmel.com/AppsAVR8/avr463_Charging_NiMH_Batteries_with_BC100/trunk/code/IAR/NIMHspecs.h $
\r
25 * $Date: 2007-08-09 14:47:58 +0200 (to, 09 aug 2007) $\n
\r
26 ******************************************************************************/
\r
32 //******************************************************************************
\r
34 //******************************************************************************
\r
35 // This is for common NiMH batteries.
\r
36 #define CELL_VOLTAGE_SAFETY 0 /*!< \brief Buffer for unmatched batteries.
\r
38 * If we are charging a multicell battery and the cells aren't matched, we
\r
39 * may risk overcharging at least one. Therefore, we may subtract this constant
\r
40 * per additional cell in battery to allow for a "buffer".
\r
42 * \note Set to 0 if batteries are properly matched.
\r
44 * \note If this is changed to something higher than (CELL_VOLTAGE_MAX -
\r
45 * CELL_VOLTAGE_LOW), and the number of cells is great enough, the limit
\r
46 * BAT_VOLTAGE_LOW will become higher than BAT_VOLTAGE_MAX. This will cause
\r
47 * the charger to keep trying to charge, but instantly finishing because
\r
48 * the battery voltage is already at max.
\r
50 //! Maximum charge voltage for cell, in mV.
\r
51 #define CELL_VOLTAGE_MAX 1600
\r
53 //! Minimum voltage to consider cell charged at, in mV.
\r
54 #define CELL_VOLTAGE_LOW 1350
\r
56 //! Minimum voltage to start charging at, in mV.
\r
57 #define CELL_VOLTAGE_MIN 800
\r
59 //! Target voltage during prequalification, in mV.
\r
60 #define CELL_VOLTAGE_PREQUAL 1000
\r
62 //! Cell voltage drop when full charge is achieved.
\r
63 #define CELL_VOLTAGE_DROP 15
\r
66 //******************************************************************************
\r
68 //******************************************************************************
\r
69 // Battery-definitions.
\r
70 //! Number of cells in battery.
\r
71 #define BAT_CELL_NUMBER 3
\r
73 //! Maximum cell temperature (Celsius).
\r
74 #define BAT_TEMPERATURE_MAX 50
\r
76 //! Minimum Cell temperature (Celsius).
\r
77 #define BAT_TEMPERATURE_MIN 5
\r
79 //! Maximum time for prequalification, in minutes.
\r
80 #define BAT_TIME_PREQUAL 2
\r
82 //! \brief Constant charge current, in mA, during prequalification mode.
\r
83 //! \note This is typically lower than the main charge current.
\r
84 #define BAT_CURRENT_PREQUAL 150
\r
86 //! Charge current hysteresis, in mA.
\r
87 #define BAT_CURRENT_HYST 3
\r
89 //! Charge voltage hysteresis, in mV.
\r
90 #define BAT_VOLTAGE_HYST 10
\r
92 //! Maximum battery voltage, in mV.
\r
93 #define BAT_VOLTAGE_MAX (CELL_VOLTAGE_MAX * BAT_CELL_NUMBER) - \
\r
94 ((BAT_CELL_NUMBER - 1) * CELL_VOLTAGE_SAFETY)
\r
96 //! Minimum voltage, in mV, to consider battery charged.
\r
97 #define BAT_VOLTAGE_LOW (CELL_VOLTAGE_LOW * BAT_CELL_NUMBER)
\r
99 //! Minimum voltage, in mV, to consider battery safe to charge.
\r
100 #define BAT_VOLTAGE_MIN (CELL_VOLTAGE_MIN * BAT_CELL_NUMBER)
\r
102 //! Voltage drop, in mV, when full charge is achieved.
\r
103 #define BAT_VOLTAGE_DROP (CELL_VOLTAGE_DROP * BAT_CELL_NUMBER)
\r
105 //! Charge voltage to achieve, in mV, during prequalification mode.
\r
106 #define BAT_VOLTAGE_PREQUAL (CELL_VOLTAGE_PREQUAL * BAT_CELL_NUMBER)
\r
108 #endif // NIMHSPECS_H
\r