open pdf file in c# windows application : How to add text box to pdf application software tool html windows azure online 21818c1-part963

2004 Microchip Technology Inc.
DS21818C-page 11
PS501
4.3
Capacity Relearn at Discharge 
Termination
To maintain accurate capacity prediction ability, the
FullCapacity value is relearned on each discharge,
which has reached a valid EOD after a previous valid
fully charged condition (EOC). If a partial charge occurs
before reaching a valid EOD, then no relearn will occur.
If the discharge rate at EOD is greater than the ‘C-rate’
adjusted value in RelearnCurrLim, then no relearn will
occur.
When a valid EOD has been reached, then the error cal-
culations represented by the SBData value of MaxError
will be cleared to zero. If appropriate, the relearned value
of FullCapacity (and FullChargeCapacity
) will also be
updated at this time.
4.4
Discharge Termination Voltage 
Look-up Table
4.4.1
NEAR EMPTY SHUTDOWN POINT
As the graph in Table4-1 shows, available capacity in
the battery varies with temperature and discharge rate.
Since the remaining capacity will vary with temperature
and discharge rate, a near empty shutdown point will
also vary with temperature and discharge rate.
Knowing the discharge rate that occurs in the system
during the shutdown process and knowing the tempera-
ture can pinpoint the exact save to disk point that will
always leave the perfect shutdown capacity. The PS501
uses this information to tailor the gas gauge to the sys-
tem and the remaining capacity and RSOC fuel gauge
function will always go to zero at the efficient shutdown
point. The table will use the voltage points at which this
happens as the error correction and FullCapacity
relearn point. This will ensure a relearn point before
shutdown occurs and will correct any error in remaining
capacity, also to ensure proper shutdown reserve
energy.
The shutdown point has to equal the capacity required
to shut down the system under the conditions of the
shutdown. That is, looking at the curve that represents
the actual discharge C-rate that occurs during the sys-
tem shutdown function, we must stop discharge and
initiate shutdown when the system has used capacity
equal to that point on the shutdown C-rate curve. This
is because no matter what the C-rate is when the shut-
down point is reached, the system will automatically
switch to the C-rate curve that represents the actual
current draw of the shutdown function. So it doesn't
matter if the system is in high discharge or low dis-
charge, it will be in “shutdown” discharge conditions
when shutdown begins and there must be enough
capacity left. An example is a computer’s save to disk
function.
Table4-1 shows that the system will always shutdown
at the same capacity point regardless of C-rate condi-
tions (since the C-rate of the save to disk procedure is
a constant). Thus, we can automatically have an RSOC
that is compensated for C-rate; it will go to zero when
the capacity used is equal to the point at which
shutdown occurs.
Ignoring the effects of temperature, we could mark the
capacity used up to the shutdown point of the shutdown
curve. All the shutdown voltage would then represent
the same capacity and RSOC would always become
zero at this capacity and FCC would always equal this
capacity, plus the residual capacity of the save to disk
curve.
To compensate for temperature, we can look at the
series of curves that represent the shutdown C-rate at
different temperatures. The PS501 implementation is
to measure the temperature and choose a scaled
RSOC value that will go to zero at the save to disk point
at this temperature, assuming the temperature does
not change. If it does change, then an adjustment to
RSOC will be needed to make it go to zero at the
shutdown point. 
Taking temperature into consideration, the amount of
capacity that can be used before shutdown is a
constant as C-rate changes, but not constant as tem-
perature changes. Thus, in the Look-up Table (LUT),
the individual temperature columns will have voltage
points that all represent the same capacity used, but
the rows across temperature points (C-rate rows) will
represent the different capacity used. 
To compensate RSOC and RM, interpolation will be
used and the compensation adjustment will happen in
real-time to avoid sudden drops or jumps. Every time
the temperature decreases by one degree, a new inter-
polated value will be subtracted from RSOC and RM.
Every time the temperature increases by one degree,
RSOC and RM will be held constant until discharged
capacity equals the interpolated value that should have
been added to RSOC and RM (to avoid capacity
increases during discharge). With this interpolation
happening in real-time, there will be no big jumps or
extended flat periods as we cross over boundaries in
the LUT. This compensation will not begin until after the
fully charged status is reset, allowing RSOC to be
100% always when the battery is full.
4.5
Age Compensation
The voltage EOD points will be compensated due to the
age of the cells. A linear factor, AgeFactor, will be
applied to the voltage points as a function of
CycleCount
. The voltage levels will decrease as the
battery pack ages to model the flattening of the voltage
vs. capacity curve that naturally happens to battery
cells. 
How to add text box to pdf - insert text into PDF content in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
XDoc.PDF for .NET, providing C# demo code for inserting text to PDF file
how to add text box to pdf document; how to enter text into a pdf
How to add text box to pdf - VB.NET PDF insert text library: insert text into PDF content in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Providing Demo Code for Adding and Inserting Text to PDF File Page in VB.NET Program
how to add text box to pdf; how to add text field to pdf
PS501
DS21818C-page 12
2004 Microchip Technology Inc.
TABLE 4-1:
V_EOD LOOK-UP TABLE
The above table is an example of the various voltage
values that will signal the shutdown points as a function
of temperature and discharge rate.
Also shown is the amount of capacity left after
shutdown that will compensate RSOC.
Table4-2 shows the actual names of the values in the
EEPROM.
TABLE 4-2:
VALUE NAMES IN THE EEPROM
TABLE 4-3:
VALUE DEFINITIONS IN THE EEPROM
< -10°
< 0°
< 10°
< 20°
< 30°
< 40°
< 50°
> 50°
< 0.2C
V1
V2
V3
< 0.5C
< 0.8C
< 1.1C
< 1.4C
< 1.7C
< 2.0C
> 2.0C
V62
V63
V64
Capacity
20%
10%
5%
3%
0%
0%
0%
0%
TEOD(1)
TEOD(2)
TEOD(3)
TEOD(4)
TEOD(5)
TEOD(6)
TEOD(7)
TEOD(8)
CEOD(1)
VEOD1(1) VEOD1(2) VEOD1(3) VEOD1(4) VEOD1(5) VEOD1(6) VEOD1(7) VEOD1(8)
CEOD(2)
VEOD2(1) VEOD2(2) VEOD2(3) VEOD2(4) VEOD2(5) VEOD2(6) VEOD2(7) VEOD2(8)
CEOD(3)
VEOD3(1) VEOD3(2) VEOD3(3) VEOD3(4) VEOD3(5) VEOD3(6) VEOD3(7) VEOD3(8)
CEOD(4)
VEOD4(1) VEOD4(2) VEOD4(3) VEOD4(4) VEOD4(5) VEOD4(6) VEOD4(7) VEOD4(8)
CEOD(5)
VEOD5(1) VEOD5(2) VEOD5(3) VEOD5(4) VEOD5(5) VEOD5(6) VEOD5(7) VEOD5(8)
CEOD(6)
VEOD6(1) VEOD6(2) VEOD6(3) VEOD6(4) VEOD6(5) VEOD6(6) VEOD6(7) VEOD6(8)
CEOD(7)
VEOD7(1) VEOD7(2) VEOD7(3) VEOD7(4) VEOD7(5) VEOD7(6) VEOD7(7) VEOD7(8)
CEOD(8)
VEOD8(1) VEOD8(2) VEOD8(3) VEOD8(4) VEOD8(5) VEOD8(6) VEOD8(7) VEOD8(8)
FCCP(1)
FCCP(2)
FCCP(3)
FCCP(4)
FCCP(5)
FCCP(6)
FCCP(7)
FCCP(8)
TEOD  8 coded bytes
typ: 5, 20, 35, 50, 80, 113, 150, 150
Range: 1-255 per byte
EOD Temperature boundaries, 8 increasing values of temperature coded as TEODx = (Tcelsius * 10 + 200)/4
CEOD  8 coded bytes
typ: 19, 32, 48, 64, 77, 90, 109,1 09
Range: 1-255
EOC C-rate boundaries, 8 increasing values of C-rates coded:
CEODx = C-rate * (256/28/R
F
), where R
F
is the Rate Factor (R
FACTOR
) OTP EPROM parameter. 
For R
F
= 7, CEODx = C-rate * 64. Thus, a value of 32 is one-half C, etc.
FCCP  coded %
typ: 50, 25, 12, 8, 0, 0, 0
Range: 1-255 
Unusable residual capacity before save to disk, corresponding to temperature, 255 = 100%
VEOD  coded
typ: 75
Range: 1-255
End-Of-Discharge voltage, voltage = 2700 + 4 * VEOD. Cell voltage at which save to disk is signaled.
VB.NET PDF Text Box Edit Library: add, delete, update PDF text box
Barcode Read. Barcode Create. OCR. Twain. Add Text Box. |. Home ›› XDoc.PDF ›› VB.NET PDF: Add Text Box. VB.NET PDF - Add Text Box to PDF Page in VB.NET.
add text boxes to pdf; adding text pdf file
C# PDF Text Box Edit Library: add, delete, update PDF text box in
C# PDF: Add Text Box. C#.NET PDF SDK - Add Text Box to PDF Page in C#.NET. C# Explanation to How to Add Text Box to PDF Page in C# Project with .NET PDF Library.
add text fields to pdf; adding text box to pdf
2004 Microchip Technology Inc.
DS21818C-page 13
PS501
5.0
CHARGE CONTROL 
A SBS configuration normally allows the Smart Battery
to broadcast the ChargingVoltage
and ChargingCurrent
values to the Smart Battery Charger (SMBus address
12hex) to ‘control’ when to start charge, stop charge
and when to signal a valid ‘fully charged’ condition.
A
larmWarnings
are also sent from the Smart Battery
(SMBus address 16 hex) to the Smart Battery Charger.
Alternately, the SMBus Host or a “Level 3” Smart
Battery Charger may simply read the SBData values
for ChargingVoltage
and ChargingCurrent
from the
Smart Battery directly. The Host or “Level 3” Smart
Battery Charger is also required to read the SBData
value of BatteryStatus
to obtain the appropriate alarm
and status bit flags. When used in this configuration,
the ChargingCurrent
and ChargingVoltage
broadcasts
can be disabled from the Smart Battery by setting the
CHARGER_MODE (bit 14) in the BatteryMode
regis-
ter. The PS501 ICs support all of these functions.
(Please refer to the SBS Smart Battery Charger
Specification for a definition of the “Level 3” Smart
Battery Charger.)
The ChargingCurrent
and ChargingVoltage
registers
contain the maximum charging parameters desired by
the particular chemistry, configuration and environmen-
tal conditions. The environmental conditions include
the measured temperature and the measured cell or
pack voltages.
For Li-based systems, ChargingVoltage
should be set
to the product of the EOCVolt and Cells values from
the EEPROM:
EQUATION 5-1:
The ChargingCurrent
value is set to a maximum using
the ChrgCurr value from the EEPROM. For Lithium
systems, both ChargingCurrent
and ChargingVoltage
values are maximums. When the current reaches
ChrgCurr, it will be held constant at this value. Then,
when the voltage reaches ChrgVolt, the current must
be reduced so that the voltage will be constant and not
exceed the maximum. This is accomplished by setting
ChargingCurrent
to ChrgCurrOff. For safety reasons,
this current change also occurs when the temperature
limits are exceeded. When temperature or voltage lim-
its are exceeded, the value of ChargingCurrent
changes to the ChrgCurrOff value from the EEPROM.
When a valid End-Of-Charge (EOC) condition is
detected and a fully charged state is reached, the
ChargingCurrent
value is set equal to the ChrgCurrOff
value. 
When ChargingCurrent
is set to the ChrgCurrOff value,
no broadcasts of either ChargingCurrent
or Charging-
Voltage
will occur unless a charge current greater than
NullCurr is detected by the A/D measurements.
Temperature limits are set using the ChrgMaxTemp,
DischrgMaxTemp and ChrgMinTemp values from
EEPROM. These values represent the temperature
limits within which ChargingCurrent
will be set to
ChrgCurr. Temperatures outside these limits will cause
ChargingCurrent
to be set to ChrgCurrOff.
If ChargingCurrent
is set to ChrgCurrOff and the mea-
sured temperature is greater than DischrgMaxTemp
and less than ChrgMaxTemp and a charge current is
measured which is significantly larger than the
ChrgCurrOff value, then ChargingCurrent
will be set to
ChrgCurr unless a fully charged condition has already
been reached.
If the CHARGER_MODE bit in the BatteryMode
regis-
ter is cleared (enabling broadcasts of ChargingCurrent
and ChargingVoltage
), then these broadcasts will occur
every NChrgBroadcast measurement cycle. 
The Smart Battery Data and Smart Battery Charger
Specifications  require  that  ChargingCurrent
and
ChargingVoltage
broadcasts occur no faster than once
per 5 seconds and no slower than once per 60 seconds
when charging is occurring or desired. This requires
that the NChrgBroadcast value must be set between
10 and 120. The SMBus Specification also requires
that no broadcasts occur during the first 10 seconds
after SMBus initialization.
EXAMPLE 5-1:
CONFIGURATION
ChargingVoltage
EOCVolt x Cells
Measurement cycle is 500 msec
NChrgBroadcast = 100 decimal
ChrgCurr
= 2500 decimal
ChrgCurrOff
= 10 decimal
ChrgMaxTemp
= 162 decimal
DischrgMaxTemp = 137 decimal
ChrgMinTemp
= 50 decimal
Results:
ChargingCurrent
and ChargingVoltage
broadcasts:
100 cycles of 500 msec = every 50 seconds
Broadcast delay after SMBus initialization:
10 seconds
ChargingCurrent
if Temperature > 45°C: 10 mA
ChargingCurrent
if Temperature < 0°C: 10 mA
ChargingCurrent
if Temperature < 35°C and 
> 0°C: 2500 mA
C# PDF Annotate Library: Draw, edit PDF annotation, markups in C#.
installed. Support to add text, text box, text field and crop marks to PDF document. Able class. C#.NET: Add Text Box to PDF Document. Provide
adding a text field to a pdf; add text to pdf without acrobat
C# WPF PDF Viewer SDK to annotate PDF document in C#.NET
Text box. Click to add a text box to specific location on PDF page. Line color and fill can be set in properties. Copyright © <2000-2016> by <RasterEdge.com>.
how to add text fields to a pdf document; adding text to a pdf in acrobat
PS501
DS21818C-page 14
2004 Microchip Technology Inc.
5.1
Full Charge Detection Methods
For a typical Lithium Ion constant-current/constant-
voltage charge system, the PS501 will monitor the
taper current that enters the battery once the battery
has reached the final voltage level of the charger. Once
the taper current falls to a certain level, indicating that
the battery is full, the End-Of-Charge (EOC) will be trig-
gered. Different taper currents will be used for different
temperatures. See the parameter explanation in
Section9.0 “Parameter Setup” for details.
When a valid fully charged EOC condition is detected,
the following actions occur:
• The FULLY_CHARGED status bit (bit 5) in the 
SBData value of BatteryStatus
is set to ‘
1
’ to 
indicate a full condition. (This will remain set until 
RelativeStateOfCharge
drops below the 
ClrFullyChrg value in EEPROM.)
• RelativeStateOfCharge
is set to 100%.
• ChargingCurrent
is set to ChrgCurrOff value.
• SBData value for MaxError
is cleared to zero 
percent (0%).
• The TERMINATE_CHARGE_ALARM bit (bit 14) 
is set in BatteryStatus
and an AlarmWarning
broadcast is sent to the SMBus Host and Smart 
Battery Charger addresses.
• The OverChrg value is incremented for any 
charge received above 100% after a valid fully 
charged EOC condition.
• Control flags for internal operations are set to 
indicate a valid full charge condition was 
achieved.
• Other BatteryStatus
or AlarmWarning
flag bits 
may also be set depending on the conditions 
causing the EOC.
- The charge timer, EOCTimer, is exceeded
- Cell voltage is higher than TCAVolt
5.2
Temperature Algorithms
The PS501 SMBus Smart Battery IC provides multiple
temperature alarm set points and charging conditions.
The following EEPROM parameters control how the
temperature alarms and charging conditions operate.
HighTempAl: When the measured temperature is
greater than HighTempAl, the OVER_TEMP_ALARM
is  set.  If  the  battery  is  charging,  then  the
TERMINATE_CHARGE_ALARM is also set.
ChrgMinTemp, DischrgMaxTemp and ChrgMaxTemp:
If the measured temperature is less than ChrgMinTemp,
the ChargingCurrent
is set to ChrgCurrOff and the
ChargingVoltage
is set to ChrgVolt to communicate to
the charger that the non-charging state of current and
voltage should be given. When measured temperature
is greater than ChrgMaxTemp and the system is charg-
ing, or greater than DischrgMaxTemp and the system is
discharging, then ChargingCurrent
is set to ChrgCurrOff
and  the ChargingVoltage
is set to ChrgVoltOff
also.Otherwise, ChargingCurrent
ChrgCurr and
ChargingVoltage
ChrgVolt.
6.0
CELL BALANCING
The PS501 has internal cell balancing loads with which
to draw extra current away from higher voltage cells.
There are internal 500 ohm resistors, which will draw
up to 8.4 mA of current from each cell, depending on
the cell voltage. The cell balancing algorithm will moni-
tor individual cell voltages and the difference between
them. When the difference between any cells exceeds
the EEPROM parameter, VcelldiffMax, the resistor
load will be applied to the higher cell until it is within
VcelldiffresetMax of the lowest. Cell balancing will
only be applied during the charging state to maintain
run time during discharge. 
Determination of cell balance requirement will be made
near End-Of-Charge, when the capacity difference
results in a cell voltage difference. Once this determina-
tion is made, cell balancing will commence on the
charge cycle and remain in effect for the entire charge
cycle. Upon discharging, cell balancing will be disabled
to preserve run time. Once the near empty point is
reached again, determination will be made as to
whether correct hysteresis has been reached to disable
the cell balancing for the next charge cycle. 
C# WinForms Viewer: Load, View, Convert, Annotate and Edit PDF
Add text to PDF document in preview. • Add text box to PDF file in preview. • Draw PDF markups. PDF Protection. • Sign PDF document with signature.
how to insert text in pdf reader; how to add text to a pdf file in acrobat
C# WPF Viewer: Load, View, Convert, Annotate and Edit PDF
Highlight PDF text in preview. • Add text to PDF document. • Insert text box to PDF file. • Draw markups to PDF document. PDF Protection.
add text to pdf document in preview; add text block to pdf
2004 Microchip Technology Inc.
DS21818C-page 15
PS501
FIGURE 6-1:
CELL BALANCING
Cell balancing: entry from main
Charging
?
Set Appropriate Cell Balancing
(ADCON1) per Active Balance
flags (1 to 3)
Set flag_cell_balance_on = 1
YES
NO
Set Appropriate Cell Balance
flag(s) to Balance during Charge
(3 maximum)
Set All Cell Balance flags OFF
Set flag_cell_balance_on = 0
SOC <
r_e_imbalance_SOC (%)
?
Any V
CELL
Delta
> r_e_vcell_imbalance_set
?
YES
YES
NO
Any V
CELL
balance
flags set ?
This algorithm makes the imbalance determination on the discharge cycle near EOD and uses the entire charge
cycle for balancing (good for low balance currents)
exit back to main
YES
NO
NO
flag_cell_imbalance_on
set ?
Any V
CELL
delta
> r_e_vcell_imbalance_reset
?
YES
NO
Force ADCON1 CB bits to 0
(no balancing during discharge)
NO
YES
C# PDF Sticky Note Library: add, delete, update PDF note in C#.net
Allow users to add comments online in ASPX webpage. Able to change font size in PDF comment box. Able to save and print sticky notes in PDF file.
add editable text box to pdf; how to add text to a pdf in acrobat
.NET PDF Document Viewing, Annotation, Conversion & Processing
PDF Write. Insert text, text box into PDF. Edit, delete text from PDF. Insert images into PDF. Edit, remove images from PDF. Add, edit, delete links. Form Process
how to insert pdf into email text; add text field to pdf
PS501
DS21818C-page 16
2004 Microchip Technology Inc.
7.0
GPIO CONFIGURATION
GPIOs can be set up to act as inputs or outputs that are
based on conditions involving SBData parameters or
GPIO levels compared to constants. This powerful pro-
gramming model allows for customizing GPIO to set on
any possible fuel gauge conditions and reset on any
other possible fuel gauge conditions in any groupings.
TABLE 7-1:
GPIO CONFIGURATIONS
GPIOs configured above as standard logic output can
be programmed to activate or reset in response to any
group of fuel gauge conditions. Each “condition” is
defined by 4 bytes.
TABLE 7-2:
GPIO CONDITIONS
Name
Length
Definition
GPIOSTATE
2
Initialized default state (positive logic)
GPIODIRECTION
2
Initialized direction:
1
= input
0
= output
GPIOCONFIG
2
GPIO configuration
Bit 8: 
1
= pull-ups/downs disabled
0
= pull-downs enabled
Bits 7:0: 
if input:
1
= pulled down
0
= pulled up
if output: 
1
= LED drive (GPIO0-7 only)
0
= standard logic
GPIOPOLARITY
2
“Polarity” mask applied to invert positive logic
Byte
Condition
Definition
Byte 1
Flags
bit 7:
1 signifies last condition in group
bit 4:
Combination function (1:AND, 0:OR)
bit 3:
Signed (1) or unsigned (0)
bits 2:0 Comparison function (0 : >, 1 : <, 2 : =, 3 : AND, 4 : NOR)
Byte 2
Condition selection
x00-x3F – SBData command code
x40 – State flags
x41 – GPIO flags
x42 – V
CELL
-min
x43 – V
CELL
-max
x44 – V
CELL
-diff
x45 – Misc. flags
Byte 3
Byte 4
Condition threshold
Constant
VB.NET PDF - Annotate PDF with WPF PDF Viewer for VB.NET
Text box. Click to add a text box to specific location on PDF page. Line color and fill can be set in properties. Copyright © <2000-2016> by <RasterEdge.com>.
add text to pdf file reader; adding text fields to pdf
VB.NET PDF - Annotate PDF Online with VB.NET HTML5 PDF Viewer
Click to add a text box to specific location on PDF page. Outline width, outline color, fill color and transparency are all can be altered in properties.
add text pdf acrobat professional; how to add text fields to pdf
2004 Microchip Technology Inc.
DS21818C-page 17
PS501
Each condition in the table is processed by applying a
“comparison function” to the selected data (“condition
selection”) and the given constant (“condition thresh-
old”). The result of this operation (“true” or “false”) from
each condition in the group is combined as dictated by
the “AND-OR” “combination function” bit in the flag
byte. Because the “AND” function has precedence over
the “OR”, processing the CG can be described as
OR’ing subgroups of ANDs (see Example7-1 below).
One 8-bit timer (clocked at 500 msec) is associated
with all 16 CSF(s). The timer compared to its threshold
is an implied “AND” term to the CG (i.e., if processing
of the CG to set the CSF results in “true”, the timer is
incremented and if timer >= threshold, the SF is set;
otherwise, the SF is not set even though the GC is sat-
isfied). If processing of the CG to set the CSF results in
“false”, the timer is set to zero. The timer is not allowed
to increment past the threshold.
The conditions in the order they are stored in memory
will build the activation equation until bit 7 of byte 1 is
set, signifying the last condition of the group. At that
point, the next group of conditions is the Reset
equation. When the next to last condition bit is set, a
new activation group begins. 
EXAMPLE 7-1:
CONDITION GROUPS
TABLE 7-3:
CONDITIONS FOR EXAMPLE7-1
Example Condition Group: 
(V
CELL
-min < 3200) .AND. (CURR > 100) .OR. (TEMP > 60) .AND. (CURR > 200)
because of precedence the equation would be interpreted:
((V
CELL
-min < 3200) .AND. (CURR > 100)) .OR. ((TEMP > 60) .AND. (CURR > 200))
Example Reset Condition Group:
(V
CELL
-min > 3200) OR (CURR = 200)
Condition
Byte 1
Byte 2
Byte 3, 4
Description
1
x01
x42
x0C80
OR V
CELL
-min < 3200
2
x10
x0A
x0064
AND CURR > 100
3
x00
x08
x0D02
OR TEMP > 60°C (3330 degrees K * 10)
4
x80
x0A
x00C8
AND CURR > 200 (last condition bit set)
1
x00
x42
x0C80
OR V
CELL
-min > 3200
2
x82
x0A
x00C8
OR CURR = 200 (last condition bit set)
TABLE 7-4:
PARAMETERS
Name
Length
Description
SAFE_GPIO_MASK_00
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_01
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_02
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_03
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_04
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_05
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_06
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_07
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_08
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_09
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_10
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_GPIO_MASK_11
2
Mask applied to the CSF, if <> 
0
, GPIO is set
SAFE_TIMER_LIMIT_0
1
Timer threshold/limit (500 msec tics)
SAFE_TIMER_LIMIT_1
1
PS501
DS21818C-page 18
2004 Microchip Technology Inc.
7.1
LED Parameters
When configured as LED drivers, the following
parameters determine the State-Of-Charge at which
each LED will turn on.
TABLE 7-5:
LED PARAMETERS
SAFE_TIMER_LIMIT_2
1
SAFE_TIMER_LIMIT_3
1
SAFE_TIMER_LIMIT_4
1
SAFE_TIMER_LIMIT_5
1
SAFE_TIMER_LIMIT_6
1
SAFE_TIMER_LIMIT_7
1
SAFE_TIMER_LIMIT_8
1
SAFE_TIMER_LIMIT_9
1
SAFE_TIMER_LIMIT_10
1
SAFE_TIMER_LIMIT_11
1
SAFE_TIMER_LIMIT_12
1
SAFE_TIMER_LIMIT_13
1
SAFE_TIMER_LIMIT_14
1
SAFE_TIMER_LIMIT_15
1
SAFE_FLAG_COUNT
1
Number of CSF(s) to process, 0-16 (there must be 2 condition groups (CGs) per CSF)
SAFE_CONDITION
4
Condition (start of table)
. . .
4
Condition
SAFE_CONDITION
4
Condition (end of table)
TABLE 7-4:
PARAMETERS (CONTINUED)
Name
Length
Description
Name
Length
Definition
LED_MASK
1
Mask defining GPIO(s) used for LED display(s) (
1
= LED)
LED_VALUE_0
1
GPIO 0 SOC value (SOC >= LED_VALUE, LED = on)
LED_VALUE_1
1
GPIO 1 SOC value (SOC >= LED_VALUE, LED = on)
LED_VALUE_2
1
GPIO 2 SOC value (SOC >= LED_VALUE, LED = on)
LED_VALUE_3
1
GPIO 3 SOC value (SOC >= LED_VALUE, LED = on)
LED_VALUE_4
1
GPIO 4 SOC value (SOC >= LED_VALUE, LED = on)
LED_VALUE_5
1
GPIO 5 SOC value (SOC >= LED_VALUE, LED = on)
LED_VALUE_6
1
GPIO 6 SOC value (SOC >= LED_VALUE, LED = on)
LED_VALUE_7
1
GPIO 7 SOC value (SOC >= LED_VALUE, LED = on)
LED_ICHG
2
Current threshold for LED display
LED_DUTYCYCLE
1
Duty cycle of LED drivers
GPIO_SWITCHMASK
2
Mask for switch input(s). If switch is active-high, all bits are ‘
0
’ except switch 
pin. If switch is active-low, all bits are ‘
1
’ except switch pin.
LED_DISPLAY_TIME
1
Number of 500 ms periods LEDs are lit after switch press
2004 Microchip Technology Inc.
DS21818C-page 19
PS501
8.0
SMBus/SBData INTERFACE
The PS501 uses a two-pin System Management Bus
(SMBus) protocol to communicate to the Host. One pin
is the clock and one pin is the data. The SMBus port
responds to all commands in the Smart Battery Data
Specification (SBData). To receive information about
the battery, the Host sends the appropriate commands
to the SMBus port. Certain alarms, warnings and
charging information may be sent to the Host by the
PS501 automatically. The SMBus protocol is explained
in this chapter. The SBData command set is
summarized in Table8-1.
The PS501 SMBus communications port is fully com-
pliant with the System Management Bus Specification,
Version 1.1 and supports all previous and new
requirements, including bus time-outs (both slave and
master), multi-master arbitration and collision detec-
tion/recovery. The SMBus port serves as a slave for
both read and write functions, as well as a master for
write word functions. SMBus slave protocols supported
include read word, write word, read block and write
block. Master mode supports write word protocols. The
PS501 meets and exceeds the Smart Battery Data
Specification, Version 1.1/1.1a requirements. The
PS501 is compliant with System Management Bus
Specification 1.0.
The PS501 fully implements the Smart Battery Data
(SBData) Specification v1.1. The SBData Specification
defines the interface and data reporting mechanism for
an SBS compliant Smart Battery. It defines a consistent
set of battery data to be used by a power management
system to improve battery life and system run-time,
while providing the user with accurate information. This
is accomplished by incorporating fixed, measured,
calculated and predicted values, along with charging
and alarm messages, with a simple communications
mechanism between a Host system, Smart Batteries
and a Smart Charger.
The PS501 provides full implementation of the SBData
set with complete execution of all the data functions,
including sub-functions and control bits and flags, com-
pliance to the accuracy and granularity associated with
particular data values and proper SMBus protocols and
timing.
8.1
SBData Function Description
The following subsections document the detailed
operation of all of the individual SBData commands. 
8.1.1
ManufacturerAccess
(0x00)
Internal use only. 
8.1.2
RemainingCapacityAlarm
(0x01)
Sets or reads the low capacity alarm value. Whenever
the remaining capacity falls below the low capacity
alarm value, the Smart Battery sends alarm warning
messages  to  the  SMBus  Host  with  the
REMAINING_CAPACITY_ALARM  bit  set.  A  low
capacity alarm value of ‘
0
’ disables this alarm. 
8.1.3
RemainingTimeAlarm
(0x02)
Sets or reads the remaining time alarm value.
Whenever the AverageTimeToEmpty
falls below the
remaining time value, the Smart Battery sends alarm
warning messages to the SMBus Host with the
REMAINING_TIME_ALARM bit set. A remaining time
value of ‘
0
’ disables this alarm. 
PS501
DS21818C-page 20
2004 Microchip Technology Inc.
TABLE 8-1:
SMART BATTERY DATA FUNCTIONS
SBData Function Name
Command Code Access
Parameter Reference
Units
ManufacturerAccess
– Write(1)
0x00
R/W
ManufacturerAccess
– Read(1)
0x00
R/W
RemainingCapacityAlarm
0x01
R/W
RemCapAl
mAh or 10 mWh
RemainingTimeAlarm
0x02
R/W
RemTimeAl
Minutes
BatteryMode
0x03
R/W
Bit code
AtRate
0x04
Read
mAh or 10 mWh
AtRateTimeToFull
0x05
Read
Minutes
AtRateTimeToEmpty
0x06
Read
Minutes
AtRateOK
0x07
Read
Binary 
0
/
1
(LSB)
Temperature
0x08
Read
0.1°K
Voltage
0x09
Read
mV
Current
0x0a
Read
mA
AverageCurrent
0x0b
Read
mA
MaxError
0x0c
Read
%
RelativeStateOfCharge
0x0d
Read
%
AbsoluteStateOfCharge
0x0e
Read
%
RemainingCapacity
0x0f
Read
mAh or 10 mWh
FullChargeCapacity
0x10
Read
mAh or 10 mWh
RunTimeToEmpty
0x11
Read
Minutes
AverageTimeToEmpty
0x12
Read
Minutes
AverageTimeToFull
0x13
Read
Minutes
ChargingCurrent
0x14
Read
ChrgCurr or ChrgCurrOff mA
ChargingVoltage
0x15
Read
ChrgVolt or ChrgVoltOff mV
BatteryStatus
0x16
Read
BatStatus
Bit code
CycleCount
0x17
Read
Cycles
Integer
DesignCapacity
0x18
Read
DesignCapacity
mAh or 10 mWh
DesignVoltage
0x19
Read
DesignVPack
mV
SpecificationInfo
0x1a
Read
SBDataVersion
Coded
ManufactureDate
0x1b
Read
Date
Coded
SerialNumber
0x1c
Read
SerialNumber
Not specified
Reserved
ManufacturerName
0x20
Read
MFGName
ASCII text string
DeviceName
0x21
Read
DeviceName
ASCII text string
DeviceChemistry
0x22
Read
Chemistry
ASCII text string
ManufacturerData
0x23
Read
MFGData
Hex string
OptionalMfgFunction4
0x3c
Read
V1 Cell Voltage
mV
OptionalMfgFunction3
0x3d
Read
V2 Cell Voltage
mV
OptionalMfgFunction2
0x3e
Read
V3 Cell Voltage
mV
OptionalMfgFunction1
0x3f
Read
V4 Cell Voltage
mV
Note 1: Reserved.
Documents you may be interested
Documents you may be interested