| The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers. |
Doug Williams Power Management Products ABSTRACT advanced battery
Top Searches for this datasheetAdvanced Gauge Host Firmware Flow Chart Battery Monitor Doug Williams Power Management Products ABSTRACT advanced battery-monitoring ICs, such bq2018, bq2019, bq2023, designed accurately measure charge discharge currents rechargeable battery packs. Intended pack integration, these devices contain necessary functions form basis comprehensive battery capacity management system applications such cellular phones, PDAs, Internet appliances, other portable products. battery monitors work with host controller portable system implement battery gauging management system. host controller responsible interpreting battery monitor data communicating meaningful battery data end-user power management system. This document, written around bq2019, designed assist firmware engineer engaged development advanced gauging routines host controller. flow chart presented implementing gauging function host firmware. Suggested constant variable values outlined described. This document designed used conjunction with related application note Advanced Gauge Host Firmware Guide Battery Monitor (SLVA100) Gauging Functions Apart from required general read write functions, gauge firmware broken down into tasks table flowchart organized according these functions. Table Name GGInitialize( power Gauge Firmware Tasks Description Qualify battery communication. Read convert constants scratch variables from bq2019 into host. Calculate capacity, average current, time charge time. Manage full, empty learning. Update display. register maintenance. Store remaining capacity bq2019. Clear registers. Make corrections remaining capacity self-discharge. Measure battery voltage. Call GGUpdate( battery crosses empty voltage threshold. Provide orderly shutdown. Update bq2019 registers. Recommended Interval GGUpdate( GGRegisterMaint( GGSelfDischarge( GGMeasBattVltg( GGPwrDwnSave( Once minute (typical) Hourly Several times Every seconds power down SLVA114 Gauging Constants Table below outlines suggested constants gauge implementation. Notice that last three only used mechanism simplify calculations firmware. flowchart refers specifically many these constants. Table Class Name Typical Gauge Constants Used Type/Units Description/Comment Suggested bq2019 Address 78~7F 20~25 26~2B 2C~35 36/37 38/39 3A/3B ID_ROM sMFG_DATA Data sMODEL sMFG_NAME iSERIAL_NO iMFG_DATE iDES_CAP GGInitialize( GGInitialize( GGInitialize( GGInitialize( GGInitialize( GGInitialize( GGInitialize( GGUpdate( GGInitialize( GGInitialize( GGSelfDischarge GGInitialize( GGUpdate( GGMeasBattVltg( GGInitialize( GGUpdate( GGInitialize( GGUpdate( GGInitialize( GGUpdate( GGInitialize( GGInitialize( GGInitialize( GGUpdate( GGInitialize( GGUpdate( GGInitialize( GGUpdate( bytes (str) ASCII (str) ASCII (str) ASCII (uint) (uint) Date (uint) Milliampere Hours (uint) 327.68 Factory programmed Manufacturers data Battery model Manufacturer name Serial number Manufactured date Pack design capacity iSNS_RES 3C/3D Sense resistor iSLF_DSG_RATE 3E/3F iEND_DSG_VLTG 40/41 (uint) %/Day Self discharge rate 105.8 (uint) Millivolts discharge voltage iTERM_CURR Design Data iCAP_COMP_TE iCAP_COMP_LD iTALK_LD iSTBY_LD iTALK_LD_CNTS iSTBY_LD_CNTS iCYCL_CAP 42/43 (uint) Charge taper termination Milliamperes current (byte) full capacity (byte) full capacity (uint) (uint) Counts 3.05 Counts 3.05 Capacity compensation temperature Capacity compensation load current Estimated talk load Estimated standby load iSNS_RES iTALK_LD 1000 iSNS_RES iSTBY_LD 1000 (uint) used simplify math iDES_CAP GGUpdate( iSNS_RES* 0.8/1000 Addresses hex. indicates that values maintained host since they function battery. ID_ROM fixed address bq2019. Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 Gauging Variables Table below outlines suggested variables memory addresses gauge implementation. flowchart refers specifically most these values. Table Class Name Typical Gauge Variables Used Type/Units Description/Comment Suggested bq2019 Address [2][3] 00/01 iLastMeasDsg GGInitialize( GGUpdate( GGSelfDischarge( GGInitialize( GGUpdate( GGUpdate( (uint) Counts Last measured discharge. 3.05 (Initial value during mfg.) (uint) Counts Remaining capacity (Initial 3.05 value during mfg.) (uint) Units Cycle count (Typically increased iDsgCntrCuml reached design capacity) temp seen this bq2019. Update host during GG_Update. Valid discharge flag. This flag, 0x55 used indicate true avoid possible corruption power down/up cycles. iRemCap iCycleCnt 02/03 04/05 iMaxTemp GGInitialize( GGUpdate( GGPwrDwnSave( GGInitialize( GGPwrDwnSave( (byte) (uint) Flag iValidDsg iDsgCntr Computed Values iDsgCntrCuml 08/09 GGInitialize( GGUpdate( GGSelfDischarge( GGPwrDwnSave( GGInitialize( GGUpdate( GGSelfDischarge( GGPwrDwnSave( GGInitialize( GGPwrDwnSave( GGInitialize( GGUpdate( GGSelfDischarge( GGPwrDwnSave( GGInitialize( GGUpdate( GGRegisterMaint( GGUpdate( (uint) Counts Discharge counter 3.05 learning iLastMeasDsg 0A/0B (uint) Counts Cumulative discharge counter 3.05 tracks partial discharges iCycleCnt update. (uint) Counts Last computed remaining 3.05 capacity value (uint) Counts Tracks cumulative self@ 3.05 discharge corrections. Disqualifies learning cycle exceeds iDES_CAP. (uint) Minutes (uint) Minutes Minutes elapsed since last register maintenance. Estimated remaining time present current. iLastRemCap iCumlCorrectn 0C/0D 0E/0F iTimeSinceMaint iRunTime Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 Table Class Name Typical Gauge Variables (Continued) Suggested bq2019 Address [2][3] Used Type/Units Description/Comment iTimeToFull iTalkTime iStbyTime iRelChgPercent bInit GGUpdate( GGUpdate( GGUpdate( GGUpdate( GGInitialize( GGUpdate( (uint) Minutes (uint) Minutes (uint) Minutes (uint) (bool) Flag Estimated remaining time charge full. Estimated remaining time iTALK_LD Estimated remaining time iSTBY_LD Relative charge percent full charge. `RSOC' Initial pass flag. Inhibits iRunTime iTimeToFull calculations first time through GGUpdate( Flag notify other host process that battery discharge voltage. Flag used charger other host process indicate that battery fully charged. Host version iValidDsg. This flag, 0x55 used indicate true avoid possible corruption power down/up cycles. Most recent calculation remaining capacity. bEDV GGInitialize( GGUpdate( GGUpdate( (bool) Flag (bool) Flag bChgFull iValidDsgRam GGInitialize( GGUpdate( GGPwrDwnSave( GGInitialize( GGUpdate( GGRegisterMaint( GGSelfDischarge( GGPwrDwnSave( GGUpdate( (uint) Flag Computed Values iRemCapNow (int) Counts 3.05 iRemCapNowCmp (int) Counts 3.05 load and/or temperature compensation used remaining capacity, this separate variable required most recent calculation compensated remaining capacity. Calculation remaining capacity from previous update. iRemCapPrev GGUpdate( (int) Counts 3.05 iRemCapTemp iSlfDsgEst iTempCorrection fElapsedTime GGSelfDischarge( GGSelfDischarge( GGSelfDischarge( GGUpdate( (uint) Counts Temp variable iterative 3.05 self-discharge estimate. (uint) (uint) (float) Minutes Temp self-discharge variable. Temp self-discharge variable. Value minutes, with resolution seconds since power reset detected. Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 Table Class Name Typical Gauge Variables (Continued) Suggested bq2019 Address [2][3] Used Type/Units Description/Comment Computed Values fElapsedTimePrev GGUpdate( (float) Minutes Value minutes, with resolution seconds since power reset detected previous fElapsedTime. TMPH, TMPL bq2019 contain temperature iKelvin (Host) TMPL (bq2019) TMPH (bq2019) iRegClr (Host) (bq2019) GGInitialize( GGUpdate (uint) GGUpdate( GGRegisterMaint( GGSelfDischarge( GGInitialize( GGUpdate( (uint) Bits used quickly clear DCR, CCR, SCR, DTC, combination. iRegClr used host next desired clearing pattern. Charge Time Counter. used GGUpdate( timer time function available host. Discharge Time Counter. used GGUpdate( timer time function available host Self Discharge Counter. Rate varies automatically with temperature. bq2019 Gauge Registers corresponding host vars. iChgTime (Host) CTCL (bq2019) CTCH (bq2019) iDsgTime (Host) DTCL (bq2019) DTCH (bq2019) (uint) 4096 counts hour (uint) 4096 counts hour (uint) count hour 30°C) GGInitialize( GGUpdate( iSlfDsgCntr (Host) SCRL (bq2019) SCRH (bq2019) iChgCntr (Host) CCRL (bq2019) CCRH (bq2019) iDsgCntr (Host) DCRL (bq2019) DCRH (bq2019) GGInitialize( GGSelfDischarge( GGUpdate( GGUpdate( (uint) Counts Charge count register 3.05 bq2019 increments when voltage positive. (uint) Counts Discharge count register 3.05 bq2019 increments when voltage negative. Addresses hex. [3]Gas gauge registers fixed locations. Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGInitialize( Read Mfg. Data (Table Read iDsgCntrCuml Read iChgTime Return Error Read iDsgTime Data Valid? Read Battery Design Data (Table Calculate iTimeSinceMaint (iChgTime iDsgTime) 4096. (Ensure Rollover Error) bInit flag true Calculate iTALK_LD_CNTS bEDV flag false Read iValidDsg Calculate iSTBY_LD_CNTS Calculate iCYCL_CAP iValidDsg 0x55? Write iValidDsg Case Power Glitch.) Read iMaxTemp iValidDsgRam 0x55 Read iLastMeasDsg Read iDsgCntr Read iLastRemCap Read iCumlCorrectn Read iRemCap Read iEND_DSG_VLTG Return Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGUpdate( Read Register Into iChgCntr iRemCapNow iRemCapPrev? Read Register Into iDsgCntr Discharging bInit =True? iDsgCntr iDsgCntr iRemCapPrev iRemCapNow Read Into iKelvin iDsgCntrCuml iDsgCntrCuml iRemCapPrev iRemCapNow iTimeSinceMaint ITimeSinceMaint fElapsedTime fElapsedTimePrev iKelvin iMaxTemp? iDsgCntrCuml iCYCL_CAP? iMaxTemp iKelvin Read iCycleCnt iCycleCnt iCycleCnt fElapsedTimePrev fElapsedTime Write iCycleCnt iRemCapNow iRemCapPrev Read fElapsedTime From System Battery Monitor Time Registers iDsgCntrCuml iDsgCntlCuml iCYCL_CAP Charging iRemCapNow iLastMeasDsg? iRemCapPrev iRemCapNow bInit =True? iTimeToFull=0 iRemCapNow iRemCap iDsgCntr iChgCntr iTimeSinceMaint=iTimeSinceMaint fElapsedTime fElapsedTimePrev iRemCapNow iRunTime (for time thru) iTimeToFull [fElapsedTime fElapsedTimePrev] [iLastMeasDsg iRemCapNow] [iRemCapNow iRemCapPrev] iRunTime iValidDsgRam iRemCapNow iTimeToFull (for time thru) iRunTime [fElapsedTime fElapsedTimePrev] iRemCapNow [iRemCapPrev IRemCapNow] iRemCapNow =iLastMeasDsg Optionally, iRemCapNowCmp Temperature and/or Load Compensation. However, modify iRemCapNow. Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGUpdate( Continued iRegClr 0x1F iTimeSinceMaint iTimeSinceMaint iRemCapNow iLastMeasDsg Call GGRegMaint iCumlCorrectn iValidDsgRam 0x55 iKelvin< iValidDsgRam 0x55 iDsgCntr iCumlCorrectn iDES_CAP iDsgCntrCuml iValidDsgRam iRemCap iRemCapNow Write iRemCap iRemCapNow iLastMeasDsg? Battery Full Write iRegClr iRegClr bChgFull True Battery Full Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGUpdate( Continued Battery Voltage From System Battery Voltage iEND_DSG_VLTG bEDV True iRemCapNow Voltage iRemCapNow iRegClr Depleted Capacity Battery Normal iRemCapNow iTimeSinceMaint iRegClr 0x1F iRemCap iRemCapNow bEDV True iRegClr 0x1F iValidDsgRam 0x55 iRemCap iDsgCntr iDsgCntr iRemCapPrev iRemCapNow iDsgCntr Within iDES_CAP? Write iRemCap iLastMeasDsg iDsgCntr Correct iLastMeasDsg Setting Down iDES_CAP Write iRegClr iRegClr Write iLastMeasDsg Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGUpdate( Continued iTalkTime iRemCapNow iTALK_LOAD iStbyTime iRemCapNow iSTBY_LOAD iRelChgPercent iRemCapNow iLastMeasDsg bInit False Return Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGRegisterMaint( iTimeSinceMaint iRegClr 0x1B iRemCapNow Read Register Into iSlfDsgCntr iSlfDsgCntr iSLF_DSG_RATE Call GGSelfDischarge Return Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGSelfDischarge( iRemCapTemp Smaller iRemCapNow iLastMeasDsg iTempCorrection iSlfDsgCntr iSLF_DSG_RATE iSlfDsgEst iRemCapTemp iSlfDsgEst iRemCapTemp [iSlfDsgCntr iSLF_DSG_RATE] iTempCorrection iTempCorrection iSlfDsgEst iRemCapTEmp iRemCapTemp iSlfDsgEst iRemCapTemp iRemCapTemp iSlfDsgEst iTempCorrection iTempCorrection iSlfDsgEst iSlfDsgCntr iSlfDsgCntr iSLF_DSG_RATE iRemCapNow iRemCapNow iTempCorrection iDsgCntr iDsgCntr iTempCorrection iDsgCntrCuml iDsgCntrCuml iTempCorrection iCumlCorrectn iCumlCorrectn iTempCorrection iRegClr iRegClr 0x04 //SCR clear Return Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGMeasBattVltg( Battery Voltage From System Battery Voltage iEND_DSG_VLTG Call GGUpdate Return Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 GGPwrDwnSave( iLastRemCap iRemCapNow Write iLastRemCap Write iDsgCntrCuml Write iMaxTemp iValidDsgRam 0x55 Write iValidDsg= 0x55 Write iDsgCntr Write iCumlCorrectn Transfer bq2019 Flash. Return Advanced Gauge Host Firmware Flow Chart Battery Monitor SLVA114 References Texas Instruments. data sheet bq2019 Advanced Battery Monitor (SLUS456) Texas Instruments. Advanced Gauge Host Firmware Guide Battery Monitor (SLVA100) Advanced Gauge Host Firmware Flow Chart Battery Monitor IMPORTANT NOTICE Texas Instruments Incorporated subsidiaries (TI) reserve right make corrections, modifications, enhancements, improvements, other changes products services time discontinue product service without notice. Customers should obtain latest relevant information before placing orders should verify that such information current complete. products sold subject TI's terms conditions sale supplied time order acknowledgment. warrants performance hardware products specifications applicable time sale accordance with TI's standard warranty. Testing other quality control techniques used extent deems necessary support this warranty. Except where mandated government requirements, testing parameters each product necessarily performed. assumes liability applications assistance customer product design. Customers responsible their products applications using components. minimize risks associated with customer products applications, customers should provide adequate design operating safeguards. does warrant represent that license, either express implied, granted under patent right, copyright, mask work right, other intellectual property right relating combination, machine, process which products services used. Information published regarding third-party products services does constitute license from such products services warranty endorsement thereof. such information require license from third party under patents other intellectual property third party, license from under patents other intellectual property Reproduction information data books data sheets permissible only reproduction without alteration accompanied associated warranties, conditions, limitations, notices. Reproduction this information with alteration unfair deceptive business practice. responsible liable such altered documentation. Resale products services with statements different from beyond parameters stated that product service voids express implied warranties associated product service unfair deceptive business practice. responsible liable such statements. Mailing Address: Texas Instruments Post Office 655303 Dallas, Texas 75265 Copyright 2002, Texas Instruments Incorporated Other recent searchesYDA144B - YDA144B YDA144B Datasheet XLUGY59W - XLUGY59W XLUGY59W Datasheet SUD50N06-08H - SUD50N06-08H SUD50N06-08H Datasheet Si9130 - Si9130 Si9130 Datasheet SBT250-10L - SBT250-10L SBT250-10L Datasheet ISL9011 - ISL9011 ISL9011 Datasheet ELPD-20-1 - ELPD-20-1 ELPD-20-1 Datasheet DG201B - DG201B DG201B Datasheet 202B - 202B 202B Datasheet AZ2100 - AZ2100 AZ2100 Datasheet AZ2101 - AZ2101 AZ2101 Datasheet
Privacy Policy | Disclaimer |