Microchip

MCP1631HV - Battery charger Microchip - Free user manual and instructions

Find the device manual for free MCP1631HV Microchip in PDF.

📄 54 pages English EN Download 💬 AI Question
Notice Microchip MCP1631HV - page 9
Pick your language and provide your email: we'll send you a specifically translated version.

User questions about MCP1631HV Microchip

0 question about this device. Answer the ones you know or ask your own.

Ask a new question about this device

The email remains private: it is only used to notify you if someone responds to your question.

No questions yet. Be the first to ask one.

Download the instructions for your Battery charger in PDF format for free! Find your manual MCP1631HV - Microchip and take your electronic device back in hand. On this page are published all the documents necessary for the use of your device. MCP1631HV by Microchip.

USER MANUAL MCP1631HV Microchip

Note the following details of the code protection feature on Microchip devices:

• Microchip products meet the specification contained in their particular Microchip Data Sheet.
- Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the intended manner and under normal conditions.
- There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip's Data Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
• Microchip is willing to work with the customer who is concerned about the integrity of their code.
- Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not mean that we are guaranteeing the product as “unbreakable.”

Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our products. Attempts to break Microchip's code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.

Information contained in this publication regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.

Trademarks

The Microchip name and logo, the Microchip logo, Accuron, dsPIC, KEELOQ, KEELOQ logo, MPLAB, PIC, PICmicro, PICSTART, rfPIC, SmartShunt and UNI/O are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.

FilterLab, Linear Active Thermistor, MXDEV, MXLAB, SEEVAL, SmartSensor and The Embedded Control Solutions Company are registered trademarks of Microchip Technology Incorporated in the U.S.A.

Analog-for-the-Digital Age, Application Maestro, CodeGuard, dsPICDEM, dsPICDEM.net, dsPICworks, dsSPEAK, ECAN, ECONOMONITOR, FanSense, In-Circuit Serial Programming, ICSP, ICEPIC, Mindi, MiWi, MPASM, MPLAB Certified logo, MPLIB, MPLINK, mTouch, PICkit, PICDEM, PICDEM.net, PICtail, PIC ^32 logo, PowerCal, PowerInfo, PowerMate, PowerTool, REAL ICE, rfLAB, Select Mode, Total Endurance, WiperLock and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.

SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.

All other trademarks mentioned herein are property of their respective companies.

© 2009, Microchip Technology Incorporated, Printed in the U.S.A., All Rights Reserved.

Printed on recycled paper.

QUALITY MANAGEMENT SYSTEM CERTIFIED BY DNV

=ISO/TS 16949:2002=

Microchip received ISO/TS-16949:2002 certification for its worldwide headquarters, design and wafer fabrication facilities in Chandler and Tempe, Arizona; Gresham, Oregon and design centers in California and India. The Company's quality system processes and procedures are for its PIC® MCUs and dsPIC® DSCs, KEELOQ® code hopping devices, Serial EEPROMs, microperipherals, nonvolatile memory and analog products. In addition, Microchip's quality system for the design and manufacture of development systems is ISO 9001:2000 certified.

Table of Contents

Preface ....1

Introduction....1

Document Layout .... 1

Conventions Used in this Guide 2

Recommended Reading.... 3

The Microchip Web Site .... 3

Customer Support 3

Document Revision History .... 3

Chapter 1. Product Overview

1.1 Introduction ...... 5

1.2 What is the MCP1631HV Multi-Chemistry Battery Charger Reference Design? 6

1.3 What the MCP1631HV Multi-Chemistry Battery Charger Reference Design kit includes 6

Chapter 2. Installation and Operation

2.1 Introduction ...... 7

2.2 Features 7

2.3 Getting Started 7

Appendix A. Schematic and Layout

A.1 Introduction 13

A.2 Board – Schematic 14

A.3 Board – Top Silk Layer 15

A.4 Board – Bottom Silk Layer 16

A.5 Board – Top Metal Layer 17

A.6 Board – Mid1 Metal Layer 18

A.7 Board – Mid2 Metal Layer 19

A.8 Board – Bottom Metal Layer 20

Appendix B. Bill Of Materials (BOM)

Appendix C. Software

C.1 Device SOFTWARE Flowchart 23

C.2 Selected Software Constants and Definitions 34

C.3 PIC16F883 Port Usage 37

C.4 mikroElektronika's mikroC™ Compiler Startup 38

C.5 MPLAB ^® and PICkit ^™ 2 Debugging Exercise 39

C.6 Lab Exercises 40

Appendix D. Design Example

D.1 Design Example 47

Worldwide Sales and Service ....50

Preface

NOTICE TO CUSTOMERS

All documentation becomes dated, and this manual is no exception. Microchip tools and documentation are constantly evolving to meet customer needs, so some actual dialogs and/or tool descriptions may differ from those in this document. Please refer to our web site (www.microchip.com) to obtain the latest documentation available.

Documents are identified with a "DS" number. This number is located on the bottom of each page, in front of the page number. The numbering convention for the DS number is "DSXXXXXA", where "XXXXX" is the document number and "A" is the revision level of the document.

For the most up-to-date information on development tools, see the MPLAB ^® IDE on-line help. Select the Help menu, and then Topics to open a list of available on-line help files.

INTRODUCTION

This chapter contains general information that will be useful to know before using the MCP1631HV Multi-Chemistry Battery Charger Reference Design. Items discussed in this chapter include:

  • Document Layout
  • Conventions Used in this Guide
  • Recommended Reading
    • The Microchip Web Site
  • Customer Support
    • Document Revision History

DOCUMENT LAYOUT

This document describes how to use the MCP1631HV Multi-Chemistry Battery Charger Reference Design. The manual layout is as follows:

  • Chapter 1. “Product Overview” – Important information about the MCP1631HV Multi-Chemistry Battery Charger Reference Design.
  • Chapter 2. “Installation and Operation” – Includes instructions on how to get started with this user’s guide and a description of the user’s guide.
  • Appendix A. "Schematic and Layout" – Shows the schematic and layout diagrams for the MCP1631HV Multi-Chemistry Battery Charger Reference Design.
  • Appendix B. "Bill Of Materials (BOM)" – Lists the parts used to build the MCP1631HV Multi-Chemistry Battery Charger Reference Design.
  • Appendix C. "Software" – Provides information about the application firmware and where the source code can be found.
  • Appendix D. "Design Example" – Shows a design example.

CONVENTIONS USED IN THIS GUIDE

This manual uses the following documentation conventions:

DOCUMENTATION CONVENTIONS

Description Represents Examples
Arial font:
Italic characters Referenced books MPLAB ^ IDE User's Guide
Emphasized text ...is the only compiler...
Initial caps A window the Output window
A dialog the Settings dialog
A menu selection select Enable Programmer
Quotes A field name in a window or dialog"Save project before build"
Underlined, italic text with right angle bracketA menu path File>Save——
Bold characters A dialog buttonClick OK
A tabClick the Power tab
'bnnnnA binary number where n is a digit'b00100, 'b10
Text in angle brackets <>A key on the keyboardPress,,
Courier font:
Plain CourierSample source code#define START
Filenamesautoexec.bat
File pathsc:\mccl8\h
Keywords_asm, _endasm, static
Command-line options-Opa+, -Opa-
Bit values0, 1
Italic CourierA variable argumentfile.o, where file can be any valid filename
0xnnnnA hexadecimal numberwhere n is a hexadecimal digit0xFFFF, 0x007A
Square brackets []Optional argumentsmccl8 [options] file [options]
Curly brackets and pipe character: { | }Choice of mutually exclusive arguments; an OR selectionerrorlevel {0|1}
Ellipses... Replaces repeated text var_name [,var_name...]
Represents code supplied by user void main (void) { ... }

This user's guide describes how to use MCP1631HV Multi-Chemistry Battery Charger Reference Design. The following Microchip documents are available on our web site (www.microchip.com) and recommended as supplemental reference resources.

MCP1631 Data Sheet, "High-Speed, Microcontroller-Adaptable, Pulse Width Modulator", DS22063A

This data sheet provides detailed information regarding the MCP1631/MCP1631V, MCP1631HV and MCP1631VHV product family.

PIC16F883 Data Sheet, "8-Pin Flash-Based, 8-Bit CMOS Microcontrollers with Nano Watt Technology", DS41291D

This data sheet provides detailed information regarding the PIC16F883 product family.

AN1137 Application Note, "Using the MCP1631 Family to Develop Low-Cost Battery Chargers", DS01137A

Microchip provides online support via our web site at www.microchip.com. This web site is used as a means to make files and information easily available to customers. Accessible by using your favorite Internet browser, the web site contains the following information:

  • Product Support – Data sheets and errata, application notes and sample programs, design resources, user's guides and hardware support documents, latest software releases and archived software
  • General Technical Support – Frequently Asked Questions (FAQs), technical support requests, online discussion groups, Microchip consultant program member listing
  • Business of Microchip – Product selector and ordering guides, latest Microchip press releases, listing of seminars and events, listings of Microchip sales offices, distributors and factory representatives

CUSTOMER SUPPORT

Users of Microchip products can receive assistance through several channels:

• Distributor or Representative
- Local Sales Office
• Field Application Engineer (FAE)
- Technical Support
• Development Systems Information Line

Customers should contact their distributor, representative or field application engineer (FAE) for support. Local sales offices are also available to help customers. A listing of sales offices and locations is included in the back of this document.

Technical support is available through the web site at: http://support.microchip.com

DOCUMENT REVISION HISTORY

Revision A (January 2009)

- Initial Release of this Document.

NOTES:

Chapter 1. Product Overview

1.1 INTRODUCTION

The MCP1631HV Multi-Chemistry reference design board is used to charge one to five NiMH or NiCd batteries, charge one or two cell Li-Ion batteries, or drive one or two 1W LEDs. The board uses the MCP1631HV high speed analog PWM and PIC16F883 to generate the charge algorithm for NiMH, NiCd or Li-Ion batteries.

The MCP1631HV Multi-Chemistry Battery Charger is used to evaluate Microchip's MCP1631HV in a SEPIC power converter application. As provided, the MCP1631HV Multi-Chemistry Battery Charger is user programmable using on board push buttons. The board can charge NiMH, NiCd or Li-Ion batteries. The MCP1631HV Multi-Chemistry Battery Charger provides a constant current charge (Ni-based chemistry) and constant current / constant voltage (Li-Ion) with preconditioning, cell temperature monitoring (Ni-based) and battery pack fault monitoring. Also, the charger provides a status or fault indication. The MCP1631HV Multi-Chemistry Battery Charger automatically detects the insertion or removal of a battery pack.

This chapter covers the following topics.

• What is the MCP1631HV Multi-Chemistry Battery Charger Reference Design?
- What the MCP1631HV Multi-Chemistry Battery Charger Reference Design Kit includes.

Microchip MCP1631HV - INTRODUCTION - 1

flowchart
graph TD
    A["5.3V to 18V Power Supply"] -->|+ -| B["MCP1631HV SEPIC Battery Charger"]
    B -->|B+| C["Multi-Chemistry"]
    B -->|THERM| C
    B -->|B-| C

FIGURE 1-1: MCP1631HV Multi-Chemistry Battery Charger Reference Design Block Diagram.

1.2 WHAT IS THE MCP1631HV MULTI-CHEMISTRY BATTERY CHARGER REFERENCE DESIGN?

The MCP1631HV Multi-Chemistry Battery Charger is a complete stand-alone battery charger for NiMH, NiCd or Li-Ion battery packs. The board may also be used to drive LED devices using constant current mode. When charging NiMH or NiCd batteries the reference design is capable of charging one to five batteries connected in series. If Li-Ion chemistry is selected, the board is capable of charging one or two series batteries. When the LED driver is selected, the board is capable of driving one to two 1W LEDs. This board utilizes Microchip's MCP1631HV (high-speed PWM and PIC16F883 MCU). The input voltage range for the demo board is 5.3V to 16V.

The board is capable of both boosting and bucking the input voltage in order to obtain the desired output voltage because a SEPIC converter topology is used. The overvoltage limit for the board is set to 9V. The powertrain components may be changed to allow for higher output voltages and power.

TABLE 1-1: MULTI-CHEMISTRY CHARGER CAPABILITY

Battery Chemistry 1 Cell 2 Cell 3 Cell 4 Cell 5 Cell
Li-Ion 2A 1A NA NA NA
NiMH or NiCd 1.5A 1.5A 1.5A 1.5A 1.5A
LED Driver300 mA300 mANANANA

An input terminal block is provided to apply the input voltage to the charger. An output header is also provided as a means to connect the external battery pack or simulated battery load and external 10K thermistor. A programming header is available for updating the firmware contained in the PIC16F883.

1.3 WHAT THE MCP1631HV MULTI-CHEMISTRY BATTERY CHARGER REFERENCE DESIGN KIT INCLUDES

This MCP1631HV Multi-Chemistry Battery Charger Reference Design kit includes:

• The MCP1631HV Multi-Chemistry Battery Charger Board, 102-00232
- Analog and Interface Products Demonstration Boards CD-ROM includes (DS21912):

  • MCP1631HV Multi-Chemistry Battery Charger User's Guide, (DS51697).
  • MCP1631 Data Sheet, "High-Speed, Microcontroller-Adaptable, Pulse Width Modulator", (DS22063).
  • PIC16F883 Data Sheet, "8-Pin Flash-Based, 8-Bit CMOS Microcontrollers with nanoWatt Technology", (DS41291).
  • Application Note AN1137, "Using the MCP1631 Family to Develop Low-Cost Battery Chargers", (DS01137).

Chapter 2. Installation and Operation

2.1 INTRODUCTION

The MCP1631HV Multi-Chemistry Battery Charger demonstrates Microchip's high-speed Pulse Width Modulator (PWM), MCP1631HV, used in a multi-chemistry battery charger application. When used in conjunction with a microcontroller, the MCP1631HV will control the power system duty cycle to provide output voltage or current regulation. The PIC16F883 microcontroller can be used to regulate output voltage or set current, switching frequency and maximum duty cycle. The MCP1631HV generates the duty cycle and provides fast overcurrent protection based upon various external inputs. External signals include the switching frequency oscillator, the reference voltage, the feedback voltage and the current sense. The output signal is a square-wave pulse. The power train used for the MCP1631HV Multi-Chemistry Battery Charger is a Single-Ended Primary Inductive Converter (SEPIC). The MCP1631HV microcontroller is programmable, allowing the user to modify or develop their own firmware routines to further evaluate the MCP1631HV Multi-Chemistry Battery Charger in this application.

2.2 FEATURES

The MCP1631HV Multi-Chemistry Battery Charger has the following features:

  • Input Operating Voltage Range - +5.3V to +16V
    • Maximum of 2A Charge Current for single cell Li-Ion
  • Charge NiMH, NiCd or Li-Ion Chemistries
  • Charge 1 cell or 2 cell Li-Ion Batteries in Series
  • Charge 1 cell to 5 cell NiMH or NiCd Batteries in Series
  • Drive one or two 1 Watt LEDs in series.
  • Select Chemistry and Cells using push-buttons
  • ON/OFF switch
  • Charge Status Indication
    • Programmable Charge Profile
  • Complete "C" source code is provided

- Programmable Overvoltage Shutdown (1.8V/Cell for NiMH/NiCd or 4.4V/Cell for Li-Ion)

2.3 GETTING STARTED

The MCP1631HV Multi-Chemistry Battery Charger is fully assembled and tested for charging one or two series Li-Ion Batteries, one to five series cell NiMH or NiCd batteries, or driving one to two 1 Watt LEDs. The charge termination for Li-Ion is based upon a percentage of fast charge current, the charge termination for NiMH is based on a negative voltage change versus time or positive temperature change versus time. This board requires the use of an external voltage source to charge the series connected batteries with a range of +5.3V to +16V input. An external load and thermistor is also required to evaluate the charger reference design.

Microchip MCP1631HV - GETTING STARTED - 1

line | Time (Minutes) | Battery Voltage (V) | Charge Current (A) | | -------------- | ------------------- | ------------------ | | 0 | 4.0 | 2.0 | | 15 | 4.2 | 2.0 | | 30 | 4.2 | 1.8 | | 45 | 4.2 | 1.6 | | 60 | 4.2 | 1.4 | | 75 | 4.2 | 1.2 | | 90 | 4.2 | 1.0 | | 105 | 4.2 | 0.8 | | 120 | 4.2 | 0.6 | | 135 | 4.2 | 0.5 | | 150 | 4.2 | 0.4 | | 165 | 4.1 | 0.0 | | 180 | 4.1 | 0.0 |

FIGURE 2-1: MCP1631HV Multi-Chemistry Battery Charger Charge Profile, Li-Ion.

Microchip MCP1631HV - GETTING STARTED - 2

line | Time (Minutes) | Battery Voltage (V) | Charge Current (A) | Temperature (°C) | | -------------- | ------------------- | ------------------ | ---------------- | | 0 | 4.5 | 2.0 | 25 | | 90 | 5.0 | 3.8 | 45 | | 150 | 4.5 | 2.5 | 25 |

FIGURE 2-2: MCP1631HV Multi-Chemistry Battery Charger Charge Profile, NiMH/NiCd.

2.3.1 Power Input and Output Connection

2.3.1.1 POWERING THE MCP1631HV MULTI-CHEMISTRY BATTERY CHARGER

  1. Apply the input voltage to the input terminal block, J1. The input voltage source should be limited to the 0V to +16V range. For nominal operation the input voltage should be between +5.3V and +16V.
  2. Connect the positive side of the input source (+) to pin 1 of J1. Connect the negative or return side (-) of the input source to pin 2 of J1. Refer to Figure 2-3 below.

Microchip MCP1631HV - POWERING THE MCP1631HV MULTI-CHEMISTRY BATTERY CHARGER - 1

text_image MICROCHIP Battery Charger Reference Design 102-00232 +12V GND J1 C1 C2 L1 TP18 DRAN D2 C4 J2 TP11 VOUT+ TP12 VOUT- +Battery +Thermistor -Battery, -Thermistor R1 PWR R7 R6 R11 C11 C3 R15 TP9 FB R3 S1 C2 R23 U1 C12 R4 S2 ON/OFF TP5 VOUT C16 C17 C5 R3 TP8 TEMP S2 U2 R27 R31 R4 S3 CHEM S4 C9 D3 D4 D5 D6 D7 D8 D9 R22 (LSB) DISPLAY (MSB) R19 1 VPP +VR SCB DATA CLK J3 PROG

CELLS J4

+VR SGND TX J5 SERIAL Serial PICkit™ 2 Header

FIGURE 2-3: Setup Configuration Diagram.

2.3.1.2 APPLYING A LOAD TO THE MCP1631HV MULTI-CHEMISTRY BATTERY CHARGER

  1. To apply a load (battery pack), to the MCP1631HV Multi-Chemistry Battery Charger, the positive side of the battery pack (B+) should be connected to pin 1 of J2. The negative side of the load (B-) should be connected to pin 5 of J2.
  2. For NiMH or NiCd battery packs, a thermistor referenced to (B-) in the battery pack should be utilized. EPCOS Inc. PN B57500M0103A005 is the recommended thermistor. If a thermistor is not available or not desired, a 10 kΩ resistor should be placed between pins 4 and 5 of the battery header (J2) or charger will detect a missing thermistor and no charge cycle will begin.

Microchip MCP1631HV - APPLYING A LOAD TO THE MCP1631HV MULTI-CHEMISTRY BATTERY CHARGER - 1

text_image VBAT+ + 1,000 μF - 10V AI 2Ω 10W VBAT- + Variable Power Supply 0V - 6V -

FIGURE 2-4: Simulated Battery Load.

2.3.1.3 SELECTING BATTERY CHEMISTRY AND NUMBER OF CELLS

- Three push buttons are used to start a charge cycle, select chemistry and select number of series cells. There are two LEDs, (red - NiMH, green - Li-Ion, red + green - LED Driver) used to indicate chemistry type and four yellow LEDs to indicate the number of series cells selected (D6, D7, D8, D9).

- S1 (ON/OFF) is used to start and stop the charge cycle or to enter the programming mode. When the input voltage is within the specified operating range (+5.3V to +16V), press and hold the ON/OFF button for 5 seconds, all LEDs with the exception of D3 should be illuminated. Release S1 and STATUS LED (D3) will be flashing, indicating that the board is in programming mode.

- Press S2 (CHEM) to select the desired chemistry, indication is provided by red LED D4 (Li-Ion) or green LED D5 (NiMH/NiCd) or both (LED Driver).

- Press S3 (CELLS) to select the number of series cells, indication is provided by yellow LEDs D6 thru D9 where D6 = bit 0 and D9 = bit 3 of a 4-bit hexadecimal value.

- Once the desired chemistry and number of cells is selected, press S1 (ON/OFF) to store the settings. The selected chemistry LED and number of series cells LED both should be illuminated.

- To start a charge cycle press and release S1. D3 (green) will be illuminated indicating a charge cycle has begun, the selected chemistry LED should flash slowly indicating normal charge cycle conditions.

- If the chemistry LED is not flashing and the Status LED is flashing, a fault condition has persisted for 5 attempts indicating that the charge cycle has terminated.

- Remove input voltage and check connections and verify the proper battery pack chemistry and number of series cells.

- Once the problem is corrected, apply the input voltage, verify chemistry and # of cells LEDs and press S1 to start a charge cycle.

Note: For single cell Li-Ion, a 3600 mA-Hr battery with internal protection circuitry is recommended for evaluation. For NiMH charge cycle, Panasonic HHR-210AA/B2B were used to develop the -dV/dt and +dT/dt termination methods.

2.3.1.4 STATUS LED

The MCP1631HV Multi-Chemistry Battery Charger has an LED to indicate charge status or fault status. Table 2-1 represents the state of the Status, Chemistry, and Display LEDs during various states of the charge cycle.

TABLE 2-1: LED INDICATOR TABLE

Mode StatusLi-Ion NiMHLSBit 0 Bit 1 Bit 2 MSBit 3
Power-UpOFFCHEMCHEM#CELLS#CELLS#CELLS#CELLS
Enter ConfigOFFONONONONONON
Config4HzCHEMCHEM#CELLS#CELLS#CELLS#CELLS
Calibrated4HzOFFOFFONONONON
OffOFFCHEMCHEM#CELLS#CELLS#CELLS#CELLS
ChargingON1/2 Hz CHEM1/2 Hz CHEM#CELLS#CELLS#CELLS#CELLS
FaultFLASHCHEMCHEM#CELLS#CELLS#CELLS#CELLS
Fault-OV2HzCHEMCHEM#CELLS#CELLS#CELLS#CELLS
Fault-OT1HzCHEMCHEM#CELLS#CELLS#CELLS#CELLS
Term. Code(#CELLS pressed)No ChangeNo ChangeNo Change V/ t T/ t OVPOTP
State Code(CHEM pressed)No ChangeNo ChangeNo ChangeSTATE LS Bit 0STATE Bit 1STATE Bit 2STATE MS Bit 3

TABLE 2-2: WHEN 'CHEM' SWITCH IS PRESSED, SHOWS CURRENT STATE

State CodeLSBit 0Bit 1Bit 2MSBit 3
Startup1000
ON0100
Qualification1100
NiMH CC0010
NiMH Topoff1010
Li-Ion CC0110
Li-Ion CV1110
LED CC0001
Overvoltage1001
Off0101

2.3.1.5 CHARGE PROFILE

• Li - Ion

  • Qualification: Precharge at 200 mA for V CELL < 3.0V
  • Constant Current = 2A for 1 Cell, 1A for 2 Cell
  • Constant Voltage = 4.20V, User Calibrated
  • Charge Termination = 140 mA for 1 Cell and 2 Cell
  • Overvoltage Detection, once detected, attempt to restart charge cycle 5 times, if overvoltage is persistent, terminate attempts and flash STATUS LED.

- NiMH/NiCd

  • Qualification: Precharge at 200 mA for V CELL < 0.9V.
  • Constant Current = 1.5A for 1 to 5 Cells.
  • Terminate Fast Charge for -dV/dT or +dT/dt.
  • Timed 50 mA top off charge for 1 hour.
  • Overvoltage Detection, once detected, will attempt to restart charge cycle five times. If overvoltage is still present, charging will terminate and STATUS LED will flash.

- LED Driver

  • Constant Current = 0 to 300 mA for 1 to 2 LEDs.
  • Pressing CHEM switch increments output current. Limited to 300 mA.
  • Pressing CELLS switch decrements output current. Limited to 0 mA.
  • Overvoltage Detection, once detected, will attempt to restart charge cycle five times. If overvoltage is still present, charging will terminate and STATUS LED will flash.

2.3.1.6 PROGRAMMING

Header J3 is provided for in-system circuit programming using either ICD 2 or PICkit ^™ 2.

2.3.1.7 DATA LOGGING

Header J5 is provided for serial data logging using the PICkit ^™ Serial Analyzer. The source code for the evaluation board contains the code necessary to transmit data via a PICkit ^™ Serial interface to a PC running the PICkit Serial Analyzer GUI interface. The data currently logged consists of charging current setpoint, output voltage, temperature thermistor voltage, current system state, and termination code.

The data logging feature allows the user to create and save a complete charging profile for a specific battery pack. The interface software provided with the PICkit Serial Analyzer allows the user to save the logged data to a file.

Appendix A. Schematic and Layout

A.1 INTRODUCTION

This appendix contains the following schematics and layouts for the MCP1631 Multi-Chemistry Battery Charger Reference Design:

  • Board – Schematic
  • Board – Top Silk Layer
  • Board – Bottom Silk Layer
  • Board – Top Metal Layer
  • Board – Mid1 Metal Layer
  • Board – Mid2 Metal Layer
  • Board – Bottom Metal Layer

A.2 BOARD - SCHEMATIC
Microchip MCP1631HV - A.1 INTRODUCTION - 1

text_image MCP1631HV Multi-Chemistry Battery Charger with Buck-Boost Capability TP13 VPA C1 10u C2 10u TP14 R1 1k L1:A 10u C3 2.2u D2 TP10 L1:B C4 10u R6 0.22 R7 0.22 TP11 10u C6 0.1u R9 348k R12 301k R17 100k C14 22p R19 18K IC02 INTERFACE R2 18K TP8 TP12 Q2 NDS7082A Q3 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 S16 S17 S18 S19 S20 S21 S22 S23 S24 S25 S26 S27 S28 S29 S30 S31 S32 S33 S34 S35 S36 S37 S38 S39 S40 S41 S42 S43 S44 S45 S46 S47 S48 S49 S50 S51 S52 S53 S54 S55 S56 S57 S58 S59 S60 S61 S62 S63 S64 S65 S66 S67 S68 S69 S70 S71 S72 S73 S74 S75 S76 S77 S78 S79 S80 S81 S82 S83 S84 S85 S86 S87 S88 S89 S90 S91 S92 S93 S94 S95 S96 S97 S98 S99 U2 RE3/VCRL/WR RB/T/CSP/DQ RB/T/CSP/PL RB/T/ANL/T/CINR RB/T/ANL/T/PIS RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR RB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB/T/ANL/T/PM/CINR BB-T/R/B/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RB/RAB/MICROCHIP MicroCHIP Rev2 Copy: New Standard Given by: F Cleveland Panels: 103-00232 Sheet 1 of 1 A B C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C D E F A B C C

A.3 BOARD - TOP SILK LAYER
Microchip MCP1631HV - A.1 INTRODUCTION - 2

text_image MICROCHIP Battery Charger Reference Design 102-00232 TP10 DRAIN TP11 VOUT+ TP13 VIN+ J1 C1 C2 L1 C3 D2 C4 J2 TP14 VIN- JP1 D1 R7 R6 R14 Q1 R13 TP12 VOUT- PWR R1 TP2 TP1 TP6 VSOUT R18 C16 C17 R11 C11 R8 C13 R15 C15 R16 TP9 FB R3 S1 C7 TP4 PWM ON/OFF TP5 OSC U2 C8 R4 S2 TP7 SLOPE CHEM R5 S3 C9 Status D3 D4 D5 R25 R26 R27 NiMH Li-Ion D6 D7 D8 D9 0 (LSB) DISPLAY (MSB) R22 R21 J4

CELLS

Rx +VR SGND Tx J5 J3 PROG SERIAL

A.4 BOARD – BOTTOM SILK LAYER

Microchip MCP1631HV - A.4 BOARD – BOTTOM SILK LAYER - 1

A.5 BOARD - TOP METAL LAYER
Microchip MCP1631HV - A.4 BOARD – BOTTOM SILK LAYER - 2

natural_image Pure electrical circuit lines without any symbols

A.6 BOARD - MID1 METAL LAYER
Microchip MCP1631HV - A.4 BOARD – BOTTOM SILK LAYER - 3

natural_image Abstract black-and-white diagram with scattered white circles and dots, no text or symbols present

A.7 BOARD - MID2 METAL LAYER
Microchip MCP1631HV - A.4 BOARD – BOTTOM SILK LAYER - 4

natural_image Abstract geometric diagram with black lines, dots, and shapes on white background (no text or symbols)

A.8 BOARD – BOTTOM METAL LAYER
Microchip MCP1631HV - A.4 BOARD – BOTTOM SILK LAYER - 5

text_image 104-00535-RS

Appendix B. Bill Of Materials (BOM)

TABLE B-1: BILL OF MATERIALS (BOM)

Qty Reference DescriptionManufacturer Part Number
4 B1, B2,B3, B4 BUMPONHEMISPHERE.44X.20 CLEAR3M SJ-5303 (CLEAR)
3 C1, C2,C4 CAP CERAMIC10UF 25V X5R1206Panasonic® - ECG ECJ-3YB1E106M
2 C11, C114 CAP 22PF 50VCERM CHIP0805 SMDPanasonic - ECG ECJ-2VC1H220J
2 C15, C2CAP 1500PF 50VCERM CHIP0805Panasonic - ECG ECJ-2VB1H152K
2 C18, C1CAP CER 4.7UF10V X7R 20%0805TDK Corporation C2012X7R1A475M
1 C3CAP CER 2.2UF 25V X7R 0805 MurataElectronics®North AmericaGRM21BR71E225KA73L
8 C5, C7,C8, C9,C12, C13, C16,C17CAP CER 1.0UF 25V X7R 0805Taiyo YudenTMK212BJ105KG-TR
1 C6CAP .1UF 16V CERAMIC X7R0805Panasonic - ECG ECJ-2VB1C104K
2D1, D4LED 0805 Super RED ClearPara Light Corp.L-C170KRCT-U1
1 D2DIODESCHOTTKY 30V 3ASMADiodes Inc.B330A-13-F
2D3, D5LED 0805 Super Green ClearPara Light Corp.L-C170KGCT-U1
4D6, D7, D8, D9LED 0805 Super Yellow ClearPara Light Corp.L-C170KYCT-U1
1 J1CONNTERM BLOCK 2.54MM2POSPhoenix Contact1725656
1 J2CONNHEADER 5POS .100VERT TIN FRICTION LOCKMolex® Electronics22-23-2051
1 J3CONNHEADER 5POS .100VERT TINMolex Electronics22-03-2051
1 J4CONNHEADER 3POS .100VERT TINMolex Electronics22-23-2031
1/6J5CONN HEADER .100 SNGLR/A 36POS3M 929835-01-36-RK
1 JP1BAREWIRE, 22 AWG to 26AWG, 0.330
1 L1INDUCTXFRMR SHIELD DL10UH SMDWurth Elektronik744870100
1 PCBRoHSCompliant Bare PCB,MCP1631 Multi-ChemistryCharger with Buck-Boost104-00232
QtyReferenceDescriptionManufacturerPart Number
1 Q1 HEX/MOS N-CHAN 30V 8.3A8SOICInternational Rectifier IRF7807VTRPBF
1 Q2 MOSFETN-CH 60V 280MASOT-23Fairchild Semiconductor®NDS7002A
3 R1, R10R11 RES 1.00K OHM 1/8W 1% 0805SMDPanasonic - ECG ERJ-6ENF1001V
1 R12 RES301K OHM 1/8W1% 0805SMDPanasonic - ECG ERJ-6ENF3013V
1 R15 RES10.0 OHM 1/8W1% 0805SMDPanasonic - ECG ERJ-6ENF10R0V
1 R17 RES100K OHM 1/8W1% 0805SMDPanasonic - ECG ERJ-6ENF1003V
1 R18 RES3.92K OHM 1/8W1% 0805SMDPanasonic - ECG ERJ-6ENF3921V
2 R2, R19RES 10.0K OHM1/8W 1% 0805SMDPanasonic - ECG ERJ-6ENF1002V
2 R23, R35RES 20.0K OHM1/8W 1% 0805SMDPanasonic - ECG ERJ-6ENF2002V
7 R25, R26, R27R28, R29, R30R31RES 499 OHM 1/8W 1% 0805SMDPanasonic - ECG ERJ-6ENF4990V
6 R3, R4,R5, R16,R21, R22RES 49.9K OHM 1/8W 1% 0805SMDPanasonic - ECG ERJ-6ENF4992V
1 R33 RES5.60K OHM 1/8W1% 0805SMDPanasonic - ECG ERJ-6ENF5601V
2 R34, R24RES 40.2K OHM1/8W 1% 0805SMDPanasonic - ECG ERJ-6ENF4022V
4 R6, R7,R13, R14 RES .22OHM 1/4W 1% 1206SMDPanasonic - ECG ERJ-8RQFR22V
1 R8 RES39.2K OHM 1/8W1% 0805SMDPanasonic - ECG ERJ-6ENF3922V
1 R9 RES348K OHM 1/8W1% 0805SMDPanasonic - ECG ERJ-6ENF3483V
3 S1, S2,S3 SWITCH TACT6MM 260GF SMTE-Switch TL3301NF260QG
4TP11-TP14SMT TestpointKeystone Electronics®5016
1 U1 MCP1631HV 5.0V 20 PinTSSOP High Speed PWMMicrochip Technology Inc.MCP1631HV-500E/ST
1 U2 IC PIC MCU FLASH 4KX1428SSOPMicrochip Technology Inc.PIC16F883-I/SS

Note 1: The components listed in this Bill of Materials are representative of the PCB assembly. The released BOM used in manufacturing uses all RoHS-compliant components.

Appendix C. Software

C.1 DEVICE SOFTWARE FLOWCHART

For the latest copy of the MCP1631HV Multi-Chemistry Battery Charger Reference Design firmware, visit our web site at www.microchip.com.

C.1.1 Software Functions

C.1.1.1 INTERRUPT()

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 1

flowchart
graph TD
    A["Update LED's Update One Second flag Clear Timer 0 Interrupt Flag"] --> B{Timer 1?}
    B -->|Y| C["Reload PWM Timer High/Low Count Clear Timer 1 Interrupt Flag"]
    B --> D{Timer 0?}
    D -->|Y| E["Update LED's Update One Second flag Clear Timer 0 Interrupt Flag"]
    D --> F["Ret"]
    C --> G["Interrupt()"]
    E --> G
    F --> G

C.1.1.2 MAIN()
Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 2

flowchart
graph TD
    A["Main()"] --> B["Initialize Processor"]
    B --> C["Initialize Parameters"]
    C --> D{Read A/D?}
    D -->|Y| E["SampleADC()"]
    D -->|Y| F["CheckModeChange()"]
    D -->|Y| G["DoOneSecondTasks()"]
    D -->|Y| H["Second?"]
    H --> I["Update LED's"]
    E --> J["End"]
    F --> K["End"]
    G --> L["End"]

C.1.1.3 SAMPLEADC()

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 3

flowchart
graph TD
    A["SampleADC()"] --> B["Running_Sum += ReadADCChannel()"]
    B --> C{Samples?}
    C -->|Y| D["Average Samples and Store Select Next A/D Channel"]
    C -->|N| E["Ret"]
    D --> E

C.1.1.4 READADCCHANNEL()
Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 4

flowchart
graph TD
    A["Start"] --> B["Select Channel MUX"]
    B --> C["Delay 5 µs"]
    C --> D["Start Conversion"]
    D --> E{Complete?}
    E -->|N| D
    E -->|N| F["Return Result"]

C.1.1.5 CHECKMODECHANGE()

CheckModeChange()
Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 5

flowchart
graph TD
    A["Start"] --> B{On/Off Pressed?}
    B -->|Y| C{Config?}
    B -->|-| D["Hold for 5 seconds to enter Config Mode"]
    C -->|Y| E["Setup()"]
    C -->|-| F["State = Startup Initialize parameters"]
    C -->|Y| G{ON?}
    G -->|Y| H["SetParameters()"]
    G -->|-| I["End"]
    H --> J["Ret"]

C.1.1.6 SETPARAMETERS()
Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 6

flowchart
graph TD
    A["SetParameters()"] --> B{Chemistry?}
    B -->|NiMH/NiCd Li-Ion| C["Setup NiMH Parameters"]
    B -->|LED Driver| D["Setup LED Parameters"]
    B --> E["Setup Li-Ion Parameters"]
    C --> F["Ret"]
    D --> F
    E --> F

C.1.1.7 SETIREF()

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 7

flowchart
graph TD
    A["Start"] --> B{IRef = 0?}
    B -->|N| C["Limit IRef to Min/Max Boundaries"]
    C --> D["Pause PWM Timer 1"]
    D --> E["Setup Timer 1 Reload Variables"]
    E --> F["Re-enable PW Timer 1"]
    F --> G["Ret"]
    G --> H["Shutdown Timer 1 Ref Current = 0"]
    H --> B

C.1.1.8 SETUP()
Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 8

flowchart
graph TD
    A["Setup()"] --> B{ON/OFF_SW?}
    B -->|N| C{CHEM_SW?}
    C -->|Y| D["Next Chemistry"]
    C -->|Y| E{CELLS_SW?}
    E -->|Y| F{Calibrate?}
    E -->|Y| G["Increment Number of Cells"]
    F -->|Y| H["Turn On 4 DISPLAY and 2 CHEM LED's"]
    H --> I["Average 16 A/D Battery Voltage Readings"]
    I --> J["Store Average in EEPROM"]
    J --> K{CELLS_SW?}
    K -->|Y| L["End"]
    K -->|Y| M["A"]
    K -->|Y| N["B"]
    M --> O["A"]
    N --> P["B"]
    style A fill:#f9f,stroke:#333
    style L fill:#ccf,stroke:#333
    style M fill:#cfc,stroke:#333
    style N fill:#fcc,stroke:#333

C.1.1.9 INCREMENTIREF()

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 9

flowchart
graph TD
    A[" "] --> B{inc = 0?}
    B -->|N| C["SetIRef (IRef + inc)"]
    C --> D["Ret"]

C.1.1.10 DOONESECONDTASKS()
Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 10

flowchart
graph TD
    A["Start"] --> B["Decrement Charge Timer"]
    B --> C["Update Chemistry LED's"]
    C --> D{Over-Voltage?}
    D -->|Y| E["State = OV"]
    E --> D
    D --> F["A"]

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 11

flowchart
graph TD
    A["A"] --> OT{OT?}
    OT -->|Y| OT{OT Count = 0?}
    OT -->|Y| State["State = OFF\nCause = OTP"]
    OT --> Decrement["Decrement OT Count"]
    Decrement --> C["C"]
    B["B"] --> OT

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 12

flowchart
graph TD
    B["B"] --> A{OPEN THERMISTOR?}
    A -->|Y| B{OT Count = 0?}
    B -->|Y| C["State = OFF\nCause = OPEN_T"]
    C --> D["Decrement OT Count"]
    D --> E["Reload OT Count"]
    E --> F["C"]
    F --> G["(NiMH or MiCD compilations only)"]

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 13

flowchart
graph TD
    C["Start"] --> Switch["Switch (State)"]
    Switch -->|STARTUP| ChargeTimer{Charge Timer = 0?}
    ChargeTimer -->|Y| StateOn["State = ON\nCharge Timer = Charge Timeout"]
    StateOn --> SHDN["SHDN = 0\nOTCount = OTP Retries"]
    SHDN --> SetIRef["SetIRef()"]
    SetIRef --> D["End"]
    StateOn -->|Feedback| Switch

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 14

flowchart
graph TD
    D["Start"] --> Switch["Switch (State)"]
    E["End"] --> Switch
    Switch -->|ON| Cause["Cause = 0\nSHDN = 1\nReference Current MAX = Condition Current\nReference Current MIN = 2"]
    Switch --> SetRef["SetIRef(ConditionCurrent)"]
    SetRef --> State["State = QUALIFICATION\nSTATUS LED = ON"]
    State --> Switch

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 15

flowchart
graph TD
    A["E"] --> B["Switch (State)"]
    B --> C{V_BAT >= Condition Voltage?}
    C -->|Y| D["Initialize Variables"]
    C -->|N| E{Li-Ion?}
    E -->|Y| F["SetIRef(Initial) State = LI_CC"]
    E -->|N| G{IRefMax < Condition Current?}
    G -->|Y| H["SetIRef(ChargeCurrent)"]
    G -->|N| I{NiMH?}
    I -->|Y| J["State = NM_CC"]
    I -->|N| K["State = LED_CC"]
    D --> L["F"]
    F --> L
    H --> L
    J --> L
    K --> L

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 16

flowchart
graph TD
    F["Power Supply F"] --> Switch["Switch (State)"]
    Switch -->|NM_CC| Ref["IncrementIRef()"]
    Ref --> PeakVoltage["Update Peak Voltage Check for W/tΔ"]
    PeakVoltage --> TL["Check for TL Δt"]
    TL --> TerminationFlags["Check Termination Flags"]
    TerminationFlags --> LastBat["Last Bat = Bat"]
    TerminationFlags --> LastTemp["Last Temp = Temp"]
    LastBat --> ChargeTimer["Check For Charge Timer Timeout"]
    LastTemp --> ChargeTimer
    ChargeTimer --> State["State = OFF"]
    TL --> Cause1["Cause = √/tΔ"]
    TL --> Cause2["Cause = ∆/tΔ"]
    TerminationFlags --> State2["State = NM_TOPOFF"]

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 17

flowchart
graph TD
    G["Gate"] --> Switch["Switch (State)"]
    Switch -->|NM_TOPOFF| ChargeTimer{Charge Timer = 0?}
    ChargeTimer --> Y["State = OFF"]
    Y -->|Y| StatusLED["Status LED = OFF"]
    H["Gate"] --> Switch
    Switch -->|H| H

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 18

flowchart
graph TD
    H["Start"] --> Switch["Switch (State)"]
    Switch -->|LI_CC| Battery{Battery < Charge Voltage ?}
    Battery -->|Y| IncrementIREF["IncrementIREF()"]
    IncrementIREF --> State["State = LI_CV\nIRefMin = ChargeTermination"]
    State --> ChargeTimer{Charge Timer = 0?}
    ChargeTimer -->|Y| State2["State = OFF"]
    ChargeTimer -->|Y| I
    I --> Switch

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 19

flowchart
graph TD
    I["Start"] --> Switch["Switch (State)"]
    Switch -->|LI_CV| Battery{Battery >= Charge Voltage?}
    Battery -->|Y| IncrementIRef["-Value"]
    Battery -->|Y| IRef{IRef < Termination?}
    IRef -->|Y| State1["State = OFF\nStatus LED = OFF"]
    IRef -->|Y| State2["State = OFF"]
    IRef -->|Y| ChargeTimer{Charge Timer = 0?}
    ChargeTimer -->|Y| State3["State = OFF"]
    ChargeTimer -->|Y| IRef
    IRef -->|Y| IncrementIRef
    IRef -->|Y| State4["State = OFF"]

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 20

flowchart
graph TD
    J["Input"] --> Switch["Switch (State)"]
    Switch -->|LED_CC| SW1{CHEM SW ?}
    SW1 -->|Y| Increment1Ref(+Value)
    SW1 -->|Y| Increment1Ref(-Value)
    SW1 -->|Y| CELLSW{CELLS SW ?}
    CELLSW -->|Y| Increment1Ref(+Value)
    CELLSW -->|Y| Increment1Ref(-Value)
    CELLSW --> ResetOverVoltageRetry["Reset Over Voltage Retry"]
    K["Input"] --> Switch

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 21

flowchart
graph TD
    K[" K "] --> Switch["Switch (State) "]
    Switch -->|OV| SHDN["SHDN = 0\nSetlRef(0)\nChargeTimer = 2 seconds"]
    SHDN --> OVCount{OV Count = 0?}
    OVCount -->|Y State = OFF\nCause = OVP| Decrement["Decrement OV Count"]
    Decrement --> State["State = STARTUP"]
    State --> L[" L "]
    SHDN --> Switch

Microchip MCP1631HV - C.1.1.1 INTERRUPT() - 22

flowchart
graph TD
    L --> Switch["Switch (State)"]
    Switch -->|OFF| SHDN0["SHDN = 0\nSetIRef(0)"]
    Switch --> Ret["Ret"]

C.2 SELECTED SOFTWARE CONSTANTS AND DEFINITIONS

  1. FOSC_KHZ = 8000
    Microprocessor Oscillator Frequency in kHz.
  2. CHARGER_SYSTEM = BUCK_BOOST_REF_DESIGN_BOARD
    Selects charger system option to build. Multiple options can be created which each use a single header file containing parameters for that specific system.
    Options for CHARGER_SYSTEM are:
    MULTICHEMISTRY_REF_DESIGN_BOARD_102_00232
  3. DVDT TERMINATION = ENABLED
    Used to mask NiMH termination caused by battery voltage DV/Dt. When DISABLED, allows the user to create complete charge profile by ignoring battery voltage termination.
  4. DTDT TERMINATION = ENABLED
    Used to mask NiMH termination caused by battery temperature DT/Dt. When DISABLED, allows the user to create complete charge profile by ignoring battery temperature termination. Termination due to battery overtemperature is always enabled.
  5. LION_SUPPORT = ENABLED
    Enables support for Lithium Ion batteries.
  6. NIMH SUPPORT = ENABLED
    Enable support for Nickel Metal Hydride batteries.
  7. R24 = ((float)(39.6))
    Voltage reference resistor divider highside resistor value (divider at PIC port C1).
  8. R34 = ((float)(39.6))
    Voltage reference resistor divider lowside resistor value (divider at PIC port C1).
  9. MCP1631_ISIN_AMPLIFICATION = 10.0
    MCP1631HV ISin Current Sense Input amplification.
  10. R6 ((float)(0.22)) = Current Sense (ISin) Resistor
  11. R7 ((float)(0.22)) = Current Sense (ISin) Resistor

  12. MCP1631_VSIN_RES_DIVIDER_VOLTAGE_SENSE = ((float)((100.0 + 301.0) / (100.0 + 301.0 + 348.0))) MCP1631 Voltage Sense (VSin) Resistor Divider (0.53538).

  13. BATTERY_MV_PER_BIT = ((float)(ADC_MV_PER_BIT/MCP1631_VSIN_RES_DIVIDER_VOLTAGE_SENSE)) Battery voltage A/D value in millivolts per bit.
  14. LI_ION_OVER_VOLTAGE_CHARGE = ((int)(200.0/BATTERY_MV_PER_BIT)) Cell overvoltage charge in mV (not averaged) = 50 mV to 200 mV.
  15. LI_ION_CONDITION_CURRENT = ((int)(200.0/BATTERY_MA_PER_BIT)) Cell conditioning current in mA (0.2°C)
  16. LI_ION_CONDITION_VOLTAGE = ((int)(3000.0/BATTERY_MV_PER_BIT)) Cell conditioning voltage in mV. Below this value is preconditioning area.
  17. LI_ION_CHARGE_CURRENT = ((int)(1200.0/BATTERY_MA_PER_BIT)) Constant Current mode charging current in mA (0.5°C to 1°C).
  18. LI_ION_CHARGE_TERMINATION_CURRENT = ((int)(84.0/BATTERY_MA_PER_BIT)) Charge termination current in mA (0.07°C).
  19. NIMH_NICD_OVER_VOLTAGE_CHARGE = ((int)(1800.0/BATTERY_MV_PER_BIT)) Cell overvoltage charge in mV (not averaged).
  20. NIMH_NICD_CONDITION_CURRENT = ((int)(140.0/BATTERY_MA_PER_BIT)) Cell conditioning current in mA (0.2°C to 0.3°C).
  21. NIMH_NICD_CONDITION_VOLTAGE = ((int)(900.0 / BATTERY_MV_PER_BIT)) Cell conditioning voltage in mV. Below this value is preconditioning area.
  22. NIMH_NICD_CHARGE_CURRENT = ((int)(700.0 / BATTERY_MA_PER_BIT)) Constant Current mode charging current in mA (0.5°C to 1°C).
  23. NIMH_NICD_CHARGE_TERMINATION_CURRENT = ((int)(35.0 / BATTERY_MA_PER_BIT)) Charge termination current in mA (0.033°C to 0.05°C).
  24. NIMH_NICD_CHARGE_TOPOFF_TIME = (60 * 60) Charge Topoff Time in seconds during Charge Termination mode.
  25. NIMH_NICD_CHARGE_OVTEMP_SETPOINT = ((float)(THERMISTOR_OHMS_45C)) Overtemperature Shutdown limit. Set to Thermistor ohms at desired shutdown temperature limit.
  26. NIMH_NICD_CHARGE_DTDT_60SEC_THRESHOLD = ((int)((0.3 + THERMISTOR_DEG_C_PER_BIT/2.0)/THERMISTOR_DEG_C_PER_BIT)) Normal termination temperature change threshold in degrees Celsius over a 60 second span. (0.3 to 0.5 dending on charge rate).
  27. CHARGE_DVDT_PEAK_DETECT_COUNT = 3 Sets termination based upon number of sequencial 60 second battery voltage samples which have been lower than peak reading value.
  28. VSOUT_NOISE_LEVEL_IN_MV = ((float) 3.0) Noise level at VSOUT input to the A/D converter in mV. Approximately 3 - 5 mV of noise. Used to offset readings.
  29. DVDT_MV_PER_CELL = ((float) 6.0) Termination due to change in voltage per cell in millivolts over a 60 second interval. Termination Deadband for battery voltage dropoff after peak detect.

  30. EE_CHEMISTRY_DEFAULT = Lilon
    Default Chemistry.

  31. EE_NUMBER_OF_CELLS_DEFAULT = 2
    Default number of cells value.
  32. EE_LION_CAL_VOLTAGE_DEFAULT = ((int)((float)(4200.00 /
    BATTERY_MV_PER_BIT)))
    Default Lithium Ion battery calibration value.
  33. EE_CHARGE_TIMEOUT_DEFAULT = (5*60*60)
    Maximum charging time.
    NiMH = Use (C rating in mAh/Charge Current) + 1hr Topoff + 0.25hr pre-condition)
    *60 sec * 60 min
    Lithium Ion = Use about 2.5 * (C rating in mAh/Charge Current) * 60 sec * 60 min
  34. OSCILLATOR_DUTY_CYCLE = 25
    Oscillator duty cycle in percent. Must be in 1/16th intervals due to 4 bit counter.
  35. RS232 DATALOGGING = ENABLED
    Set to ENABLE for logging data out to USART port and PICkit™ Serial Analyzer.
    Set to DISABLED to remove logging code.
  36. THERMISTOR SUPPORT = ENABLED
    Set to ENABLE for thermistor support. Used for NiMH and NiCD charging.
    Set to DISABLED to remove thermistor code.
  37. LED_DRIVER_SUPPORT = ENABLED
    Set to ENABLE for LED driver support.
    Set to DISABLED to remove LED driver code.
  38. LED_DRIVER_OVER_VOLTAGE = ((int)(3600.0 / BATTERY_MV_PER_BIT))
    Set this value to the voltage in mV that is the absolute limit of each single LED.
    The system will go into overvoltage shutdown mode if the output voltage exceeds this value times the number of LED series connected cells being driven.
  39. LED_DRIVER_CONDITION_CURRENT =
    ((int)(10.0/BATTERY_MA_PER_BIT))
    LED conditioning (startup) current.
  40. LED_DRIVER_CONDITION_VOLTAGE = ((int)(0.0/ BATTERY_MV_PER_BIT))
    LED conditioning voltage is 0 volts. No conditioning required.
  41. LED_DRIVER_CURRENT = ((int)(300.0 / BATTERY_MA_PER_BIT))
    LED Driver current maximum value. This is the upper current limit value that the driver will deliver to the LED output.
  42. LED_DRIVER_OVTEMP_SETPOINT = ((float)(THERMISTOR_OHMS_45C))
    Optional LED overtemperature limit may be used to limit LED temperature.
    Set LED_DRIVER_OVTEMP_SETPOINT to one of the Thermistor Ohms
    definitions for the desired shutdown temperature.
  43. MAX_LED_CELLS = 2
    Maximum number of 1W LED cells in series that will be driven by the driver output.

C.3 PIC16F883 PORT USAGE

/\* Port A \*/

PORTA.0 ADC_THERMISTOR_TEMPERATURE: Thermistor A/D input

PORTA.1 ADC_BATTTERY_VOLTAGE: Battery Voltage A/D input

PORTA.4 SHDN: System Shutdown and Thermistor Supply Output

PORTA.5 ONOFF_SWITCH: On/Off switch input

PORTA.6 NUMCELLS_SWITCH: Number of Cells' switch input

PORTA.7 CHEMISTRY_SWITCH: Chemistry' switch input

/\* Port B \*/

PORTB.0 LIION_LED: Li-Ion' LED output

PORTB.1 NIMH_LED: NiMH' LED output

PORTB.2 LED_1_CELL: LS Bit '0' Hex LED display output

PORTB.3 LED_2_CELL: Bit '1' LED Hex display output

PORTB.4 LED_3_CELL: Bit '2' LED Hex display output

PORTB.5 LED_4_CELL: MS Bit '3' LED Hex display output

PORTB.6 In-Circuit Serial Programming CLOCK Line

PORTB.7 In-Circuit Serial Programming DATA Line

/\* Port C \*/

PORTC.1 PWM_CURRENT_REF_OUT: Current Reference PWM output to MCP1631HV VREF input

PORTC.2 OSC_OUT: Oscillator PWM output to MCP1631HV OSCin input

PORTC.5 STATUS_LED: Status' LED output

PORTC.6 USART Transmit port. PICkit™ Serial Analyzer interface.

PORTC.7 USART Receive port. PICkit Serial Analyzer interface.

C.4 mikroElektronika's mikroC™ COMPILER STARTUP

  1. Startup mikroC ^TM compiler (compiler not supplied, available at: http://www.mikroe.com).
  2. From the toolbar, select "Project | Open Project".
  3. Browse to the evaluation board source code path.
  4. Select the existing project file, named "MCP1631HVBuckBoostBatteryChargerReferenceDesign.ppc".
  5. From the toolbar, select: "Project | Edit Project". The page contains Processor, Clock, and Config settings.
  6. From the toolbar, select: "Tools | Options". The page contains the compiler settings.
  7. From the toolbar, select: "View | Code Explorer". This will show/hide the Code Explorer and Project Setup frames.
  8. From the toolbar, select: "View | Messages". This will show/hide the Message frame at the bottom of the screen.
  9. In the Project Setup Frame, click on the Project Summary tab. This shows the files for the project.
  10. From the toolbar, select: "Project | Build". This will build the currently load project.
  11. The compiler results will be displayed in the Message frame. Verify success.

C.5 MPLAB ^® AND PICKIT ^TM 2 DEBUGGING EXERCISE

  1. Startup MPLAB (not supplied, available at: http://www.microchip.com).
  2. From the toolbar, select "File | Open Workspace".
  3. Browse to the evaluation board source code path.
  4. Select the existing workspace file named "MCP1631HVBuckBoostBatteryChargerReferenceDesign.mcw" or create a new one.
  5. Connect the PICkit 2 programmer to header J3 on the battery charger board. Align Pin 1 of the header with the Pin 1 mark on the programmer.
  6. Set the bench power supply voltage control to minimum voltage output.
  7. Turn on the power supply and set the output voltage to 8V. Turn off the power supply.
  8. Connect the bench power supply to the battery charger board. Connect +V(8V) to J1-1 and -V (Ground) to J1-2.
  9. Turn on the power supply.
  10. From the toolbar, select "Debugger | Connect". The debugger should find the PIC16F883 processor.
  11. From the toolbar, select "File | Import".
  12. Browse to the source code path.
  13. Select the existing project file named "MCP1631HVBuckBoostBatteryChargerReferenceDesign.hex".
  14. From the toolbar, select "Debugger | Program". The debugger will program the PIC16F883 with the imported hex file.
  15. From the toolbar, select "Debugger | Reset | Processor Reset". This must always be done after programming.
  16. From the toolbar, select "File | Open".
  17. In the "Files of type" text box, select "List Files (*.lst)".
  18. Click on "MCP1631HVBuckBoostBatteryChargerReferenceDesign.lst".
  19. Click on "Open". This opens the mikroC ^TM listing file for the project. Variable and Code addresses are at the end.
  20. Scroll to the end of the listing file and locate the code label "L_main_1:". Write down the function address.
  21. In the "Program Memory" window, scroll down until you reach the same address as the "L_main_1:" function address. Right click on the line and set a breakpoint.
  22. From the toolbar, select "Debugger | Run". The debugger will stop at the breakpoint. Disable the breakpoint.
  23. From the toolbar, select "Debugger | Run". The debugger will continue.

When debugging the battery charger board, be careful when setting breakpoints. If the breakpoint occurs while the Voltage Reference PWM is HIGH, the V_REF voltage will rise to about 2.5V. The MCP1631HV will then attempt to supply the current for the given V_REF , which will be high (about 2.5V / 1.1 = 2.27A). The current is limited by the V_REF signal which is in turn limited by the V_REF voltage divider resistor pair R24 and R34.

C.6 LAB EXERCISES

  1. Startup the mikroC ^TM compiler and load the "MCP1631HVBuckBoostBatteryChargerReferenceDesign.ppc" if it does not load up automatically.
  2. Startup MPLAB and load the "MCP1631HVBuckBoostBatteryChargerReferenceDesign.mcw" workspace if it does not start up automatically.

C.6.1 Li-Ion Only Exercise (single cell, 1200 mAh pack)

  1. In the mikroC ^TM "Project Summary" frame, click on the "H files" branch to expand the '.H' file list.
  2. Double click on the "MULTICHEMISTRY_REF_DESIGN_BOARD_102_00232.H" file to open it.
  3. Scroll through the header file and locate "#define LION_SUPPORT". Set it to "ENABLED".
  4. Scroll through the header file and locate "#define NIMH_SUPPORT". Set it to "DISABLED".
  5. Scroll through the header file and locate "#define LED_DRIVER_SUPPORT". Set it to "DISABLED".
  6. Scroll down to the "#IF (LION_SUPPORT == ENABLED) section of the header file. The section contains Lithium Ion specific parameters. Note that there is a Nickel Metal Hydride and LED Driver section also.
  7. Set the LI_ION_CONDITION_CURRENT to 200 mAh. (Conditioning mode current)
  8. Set the LI_ION_CONDITION_VOLTAGE to 3000 mV. (Transition point from Conditioning to CC mode)
  9. Set the LI_ION_CHARGE_CURRENT to 1200 mAh. (CC mode current)
  10. Set the LI_ION_CHARGE_TERMINATION_CURRENT to 84 mAh. (0.07C - Termination Current for CV mode)
  11. Save the file (File | Save).
  12. Compile (Project | Build).
  13. Open MPLAB and load the workspace if it is not already loaded. (File | Open Workspace) {Source Directory}\MCP1631HVBuckBoostBatteryChargerReferenceDesign.mcw
  14. Import the new "MCP1631HVBuckBoostBatteryChargerReferenceDesign.hex" file. (File | Import)
  15. Download the file (Debugger | Program) and reset the processor (Debugger | Reset | Processor Reset).
  16. Run the new program (Debugger | Run).
  17. Calibrate the Li-Ion Termination Voltage.
  18. Disconnect and turn on the power supply and set the variable output voltage to 4.200V. Turn off the power supply.
  19. Connect the fixed 12V supply (+) lead to the input connector (+) pin J1-1.
  20. Connect the fixed 12V supply (-) lead to the input connector (-) pin J1-2.
  21. Connect the 4.200V variable supply (+) lead to the battery connector (+) pin J2-1.
  22. Connect the 4.200V variable supply (-) lead to the battery connector (-) pin J2-5.
  23. Turn on the power supply.

  24. Press and hold the "ON/OFF" button on the charger board until the LED's flash (about 5 seconds). The board is now in Configuration Mode.

  25. Press and release the "CHEM" button until the "Li-Ion" LED is on.

  26. Press and release the "# CELLS" button until the "0" display LED is on and the "1,2,3" display LED's are off.

  27. Press and hold the “# CELLS” button on the charger board until the LED’s flash (about 5 seconds). The board is now calibrated to use the 4.200V as the Li-Ion battery voltage.

  28. Press the "ON/OFF" button. The charger will exit Configuration mode.

  29. Turn off and disconnect the power supply.

  30. Reconnect the variable supply (+) lead to the input connector (+) pin J1-1.

  31. Reconnect the variable supply (-) lead to the input connector (-) pin J1-2.

  32. Connect the Li-lon battery pack to the charger board J2 connector.

  33. Turn on the supply and set the voltage to 8.0V (any voltage between 6V and 12V is good).

  34. Press the "ON/OFF" button. The charger will start charging the battery.

  35. Press the "CHEM" button to display the current charger state in HEX. "0" LED is the LS Bit.

  36. Press the "# CELLS" button to display the termination cause. No LED means no premature termination.

  37. Using an oscilloscope, refer to A.2 "Board – Schematic" and A.3 "Board – Top Silk Layer" and probe the following components:

- V_REF = TP3

- P W M = T P 4

- Oscillator = TP5

- VS_OUT = TP6

- Slope Compensation = TP7

- Temperature = TP8 (if used)

- F B = T P 9

- Drain Voltage = TP10

- Output Voltage = TP11

  1. Press the "ON/OFF" button. The charger will stop charging the battery.

C.6.2 NiMH Lab Exercise (3 Cell, 700 mAh pack, with thermistor)

  1. In the mikroC ^TM "Project Summary" frame, click on the "H files" branch to expand the '.H' file list.
  2. Double click on the "MULTICHEMISTRY_REF_DESIGN_BOARD_102_00232.H" file to open it.
  3. Scroll through the header file and locate "#define LION_SUPPORT". Set it to "DISABLED".
  4. Scroll through the header file and locate "#define NIMH_SUPPORT". Set it to "ENABLED".
  5. Scroll through the header file and locate "#define LED_DRIVER_SUPPORT". Set it to "DISABLED".
  6. Scroll down to the "#IF (NIMH_SUPPORT == ENABLED) section of the header file. The section contains Nickel Metal Hydride and NiCd specific parameters.
  7. Set the NIMH_NICD_CONDITION_CURRENT to 140 mAh. (0.2C Conditioning mode current)
  8. Set the NIMH_NICD_CONDITION_VOLTAGE to 900 mV. (Transition point from Conditioning to CC mode)
  9. Set the NIMH_NICD_CHARGE_CURRENT to 700 mAh. (1.0C Constant Current Charge)
  10. Set the NIMH_NICD_CHARGE_TERMINATION_CURRENT to 84 mAh. (0.07C - Termination Current for CV mode)
  11. Set the DVDT_MV_PER_CELL to 6.0. (Termination Voltage change per cell per minute in millivolts)
  12. Set the NIMH_NICD_CHARGE_DTDT_60SEC_THRESHOLD to 0.3. (Termination Temperature change per minute in degrees Celsius)
  13. Set the NIMH_NICD_CHARGE_OVTEMP_SETPOINT to THERMISTOR_OHMS_45C. (Termination temperature for safety)
  14. Save the file (File | Save).
  15. Compile (Project | Build).
  16. Open MPLAB and load the workspace if it is not already loaded. (File | Open Workspace) MCP1631HVBuckBoostBatteryChargerReferenceDesign.mcw
  17. Import the new "MCP1631HVBuckBoostBatteryChargerReferenceDesign.hex" file. (File | Import)
  18. Download the file (Debugger | Program) and reset the processor (Debugger | Reset | Processor Reset).
  19. Run the new program (Debugger | Run).
  20. Turn on the power supply and set the output voltage to 8V. Turn off the power supply.
  21. Connect the variable 8V supply (+) lead to the input connector (+) pin J1-1.
  22. Connect the variable 8V supply (-) lead to the input connector (-) pin J1-2.
  23. Connect the NiMH battery pack to the charger board J2 connector.
  24. Turn on the variable 8V supply.
  25. Press and hold the "ON/OFF" button on the charger board until the LED's flash (about 5 seconds). The board is now in Configuration Mode.
  26. Press and release the "CHEM" button until the "NiMH" LED is on.

  27. Press and release the "# CELLS" button until the "0" and "1" "Display" LED's are on and the "2" and "3" "Display" LED's are off. The LED display now displays "3" in Hexadecimal.

  28. Press the "ON/OFF" button. The charger will exit Configuration mode.
  29. Press the "ON/OFF" button. The charger will start charging the battery.
  30. Press the "CHEM" button to display the current charger state in HEX. "0" "Display" LED is LS Bit.
  31. Press the "# CELLS" button to display the termination cause. No LED means no premature termination.
  32. Using an oscilloscope, refer to Appendices A.2 "Board – Schematic" and A.3 "Board – Top Silk Layer" and probe the following components:

  33. V_REF = TP3

  34. P W M = T P 4
  35. Oscillator = TP5
  36. VS_OUT = TP6
  37. Slope Compensation = TP7
  38. Temperature = TP8
  39. F B = T P 9
  40. Drain Voltage = TP10
  41. Output Voltage = TP11

  42. Press the "ON/OFF" button. The charger will stop charging the battery.

C.6.3 LED Driver Lab Exercise (Two 1 Watt LED's in series)

  1. In the mikroC ^TM “Project Summary” frame, click on the “H files” branch to expand the ‘.H’ file list.
  2. Double click on the "MULTICHEMISTRY_REF_DESIGN_BOARD_102_00232.H" file to open it.
  3. Scroll through the header file and locate "#define LION_SUPPORT". Set it to "DISABLED".
  4. Scroll through the header file and locate "#define NIMH_SUPPORT". Set it to "DISABLED".
  5. Scroll through the header file and locate "#define LED_DRIVER_SUPPORT". Set it to "ENABLED".
  6. Scroll down to the "#IF (LED_DRIVER_SUPPORT == ENABLED) section of the header file. The section contains LED Driver specific parameters.
  7. Set the LED_DRIVER_OVER_VOLTAGE to 3600 mV. (Overvoltage Shutdown value per LED).
  8. Set the LED_DRIVER_CONDITION_CURRENT to 10 mAh.
  9. Set the LED_DRIVER_CONDITION_VOLTAGE to 0 mV. (Skips Conditioning State, not needed).
  10. Set the LED_DRIVER_CURRENT to 300 mAh. (Constant Current mode).
  11. Save the file (File | Save).
  12. Compile (Project | Build).
  13. Open MPLAB and load the workspace if it is not already loaded. (File | Open Workspace) MCP1631HVBuckBoostBatteryChargerReferenceDesign.mcw.
  14. Import the new "MCP1631HVBuckBoostBatteryChargerReferenceDesign.hex" file. (File | Import)
  15. Download the file (Debugger | Program) and reset the processor (Debugger | Reset | Processor Reset).
  16. Run the new program (Debugger | Run).
  17. Turn on the power supply and set the output voltage to 8V. Turn off the power supply.
  18. Connect the variable 8V supply (+) lead to the input connector (+) pin J1-1.
  19. Connect the variable 8V supply (-) lead to the input connector (-) pin J1-2.
  20. Connect the two 1 watt LED's in series to the charger board J2 connector.
  21. Turn on the variable 8V supply.
  22. Press and hold the "ON/OFF" button on the charger board until the LED's flash (about 5 seconds). The board is now in Configuration Mode.
  23. Press and release the "CHEM" button until both the "NiMH" and "Lilon" LEDs are on.
  24. Press and release the "# CELLS" button until the "1" "Display" LED is on and the "0", "2" and "3" "Display" LED's are off. The LED display now displays "2" in Hexadecimal.
  25. Press the "ON/OFF" button. The charger will exit Configuration mode.
  26. Press the "ON/OFF" button. The charger will start charging the battery.
  27. Press the "CHEM" button to display the current charger state in HEX. "0" "Display" LED is LS Bit.
  28. Press the “# CELLS” button to display the termination cause. No LED means no premature termination.

  29. Using an oscilloscope, refer to Appendices A.2 "Board – Schematic" and A.3 "Board – Top Silk Layer" and probe the following components:

  30. V_REF = TP3

  31. P W M = T P 4
  32. Oscillator = TP5
  33. VSOUT = TP6
  34. Slope Compensation = TP7
  35. Temperature = TP8 (if used)
  36. F B = T P 9
  37. Drain Voltage = TP10
  38. Output Voltage = TP11

  39. Press the "ON/OFF" button. The charger will stop charging the battery.

NOTES:

Appendix D. Design Example

D.1 DESIGN EXAMPLE

D.1.1 Design Parameters:

  • P_OUT = 10W (typical)
  • V_IN = 6V to 16V for MCP1631HV. Choose V_IN = 6V for worst case (WC).
  • V_OUT = 8.4 V for two Li-Ion batteries or 6.6V for four NiMH batteries
  • I_OUT = 1.5A for 4 NiMH batteries. Choose D I_L = 20% , I_OUT = 300 mA .
    • η = Switcher Efficiency @ 80% (typical)
  • V_F = Schottky Diode Drop @ 0.35V (typical)
  • I_IN_WC = I_OUT * V_OUT_WC / (V_IN_WC * ) = 1.5A * 6.6V / (6V * 0.8) = 2.06A
  • F_OSC = 500 kHz , T_SWITCH = 1 / F_SWITCH = 2 s
  • D_OSC = 25% , t_OSC_ON = 0.5 s , t_OSC_OFF = 1.5 s
  • Choose C20 (Artificial Ramp) = 1500 pF

D.1.2 Design:

• Duty Cycle (D) = ((V_OUT + V_F)/)/(((V_OUT + V_F)/) + V_IN)
• t_ON = D * 1/F_SWITCH = 0.65/500 kHz = 1.3 s
- t_OFF = T_SWITCH - t_ON = 2 - 1.3 = 0.7
- L = IN * D * TSWITCH/ I_L = 6V * 0.65 * 2 s/300 mA = 26 H . For SEPIC coupled inductor, use 12 L because V_IN "sees" 2 inductors. L_COUPLED = 26 H/2 = 13 H . Choose 10 H as standard value.
- I_L = 2^V_IN^D^T_SWITCH/(4^L_COUPLED) = 2^6V^0.65^2 s/(4^10 H) I_L 390mA
- I_IN = L = 390mA
- I_IN = I_OUT * V_OUT / (V_IN * ) = 1.5A * 6.6V / (6V * 0.8) = 2.06A I_IN PEAK = I_IN + 12 I_L = 2.06A + 0.195A = 2.26A
- P_OUT = V_OUT * I_OUT = 6.6V * 1.5A = 9.9W

$$ = ((8. 4 \mathrm{V} + 0. 3 5) / 0. 8) / (((8. 4 \mathrm{V} + 0. 3 5) / 0. 8) + 6 \mathrm{V}) $$

$$ = 65 \% (\text { worst case is two Li - Ion batteries }) $$

D.1.3 Slope Compensation:

  • M_Artificial Ramp = L^* R_SENSE / t_OSC_FF

$$ = 3 9 0 \mathrm{mA} ^ {*} 0. 1 1 \Omega / 1. 5 \mathrm{us} = 0. 0 4 2 9 \mathrm{V} / 1. 5 \mu \mathrm{s} $$

$$ \text { But the ramp divider is } (R 1 0 + R 1 1) / (R 1 0 + R 1 1 + R 3 5) $$

$$ = (1 k + 1 k) / (1 k + 1 k + 2 0 k) = 2 k / 2 2 k = 1 / 1 1 $$

$$ = (0. 0 4 2 9 \mathrm{V} / 1. 5 \mu \mathrm{s}) / (1 / 1 1) = 4 7 1. 9 \mathrm{mV} / 1. 5 \mu \mathrm{s} $$

• Artificial Ramp (R33 & C20) - Using V_OUT = V_IN(1 - e^-(T/))

$$ = - t _ {O F F} / \left(\operatorname{Ln} \left(1 - \left(V _ {O U T} / V _ {I N}\right)\right) \right. $$

$$ = - 1. 5 \mu \mathrm{s} / (\mathrm{Ln} (1 - (0. 4 7 1 9 \mathrm{V} / 5. 0 \mathrm{V}))) $$

$$ = - 1. 5 \mu \mathrm{s} / \mathrm{Ln} (0. 9 0 5 6 2) = 1 5. 1 3 \mu \mathrm{s} $$

- R_Artificial Ramp = _Artificial Ramp / C_Artificial Ramp = 15.13 /1500 pF = 10 k (max) , use around 5.6 k to 9.1 k for tolerances An R value of 5.6 k was used for the Eval Board.

D.1.4 Coupling Capacitor:

  • SW ON , D = 25%, t = 0.5 s I RIPPLE = t ON * 2V IN /4L = 0.5 s * (2)(6V)/(4*10 H) = 0.150A I 1 = I OUT - 1/2 I RIPPLE = 1.5A - 0.075A = 1.425A I 2 = I OUT + 1/2 I RIPPLE = 1.5A + 0.075A = 1.575A I RMS_ON = SQRT(D * (I 1^2 + I 1 * I 2 + I _2^2 )/3) (for a trapezoidal waveform) = SQRT(0.25 * (1.425 + 1.425 * 1.575 + 1.575) ^2 )/3 = 0.750A

  • SW OFF , D = 75%, t = 1.5 μs I RIPPLE = t OFF * 2V IN /4L = 1.5 μs * (2)(6V)/(4*10 μH) = 0.450A I 1 = -I IN_WC - ½ I RIPPLE = -2.06A - 0.225A = -2.285A I 2 = -I IN_WC + ½ I RIPPLE = -2.06A + 0.225A = -1.835A I RMS_OFF = SQRT(D * (I 1^2 + I 1 * I 2 + I _2^2 )/3) = SQRT(0.75 * [-2.285² + (-2.285 * (-1.835)) + (-1.835)²]/3) = 1.79A

  • I RMS = SQRT (I RMS_ON ² + I _RMS_OFF ²) = SQRT (0.750² + 1.79²) = 1.94A

- Worst-Case Capacitor Current is 1.94A. Choose a capacitor that is rated for at least the worst-case current.

NOTES:

WORLDWIDE SALES AND SERVICE

AMERICAS

Corporate Office

2355 West Chandler Blvd.

Chandler, AZ 85224-6199

Tel: 480-792-7200

Fax: 480-792-7277

Technical Support:

http://support.microchip.com

Web Address:

www.microchip.com

Atlanta

Duluth, GA

Tel: 678-957-9614

Fax: 678-957-1455

Boston

Westborough, MA

Tel: 774-760-0087

Fax: 774-760-0088

Chicago

Itasca, IL

Tel: 630-285-0071

Fax: 630-285-0075

Dallas

Addison, TX

Tel: 972-818-7423

Fax: 972-818-2924

Detroit

Farmington Hills, MI

Tel: 248-538-2250

Fax: 248-538-2260

Kokomo

Kokomo, IN

Tel: 765-864-8360

Fax: 765-864-8387

Los Angeles

Mission Viejo, CA

Tel: 949-462-9523

Fax: 949-462-9608

Santa Clara

Santa Clara, CA

Tel: 408-961-6444

Fax: 408-961-6445

Toronto

Mississauga, Ontario,

Canada

Tel: 905-673-0699

Fax: 905-673-6509

ASIA/PACIFIC

Asia Pacific Office

Suites 3707-14, 37th Floor

Tower 6, The Gateway

Harbour City, Kowloon

Hong Kong

Tel: 852-2401-1200

Fax: 852-2401-3431

Australia - Sydney

Tel: 61-2-9868-6733

Fax: 61-2-9868-6755

China - Beijing

Tel: 86-10-8528-2100

Fax: 86-10-8528-2104

China - Chengdu

Tel: 86-28-8665-5511

Fax: 86-28-8665-7889

China - Hong Kong SAR

Tel: 852-2401-1200

Fax: 852-2401-3431

China - Nanjing

Tel: 86-25-8473-2460

Fax: 86-25-8473-2470

China - Qingdao

Tel: 86-532-8502-7355

Fax: 86-532-8502-7205

China - Shanghai

Tel: 86-21-5407-5533

Fax: 86-21-5407-5066

China - Shenyang

Tel: 86-24-2334-2829

Fax: 86-24-2334-2393

China - Shenzhen

Tel: 86-755-8203-2660

Fax: 86-755-8203-1760

China - Wuhan

Tel: 86-27-5980-5300

Fax: 86-27-5980-5118

China - Xiamen

Tel: 86-592-2388138

Fax: 86-592-2388130

China - Xian

Tel: 86-29-8833-7252

Fax: 86-29-8833-7256

China - Zhuhai

Tel: 86-756-3210040

Fax: 86-756-3210049

ASIA/PACIFIC

India - Bangalore

Tel: 91-80-3090-4444

Fax: 91-80-3090-4080

India - New Delhi

Tel: 91-11-4160-8631

Fax: 91-11-4160-8632

India - Pune

Tel: 91-20-2566-1512

Fax: 91-20-2566-1513

Japan - Yokohama

Tel: 81-45-471-6166

Fax: 81-45-471-6122

Korea - Daegu

Tel: 82-53-744-4301

Fax: 82-53-744-4302

Korea - Seoul

Tel: 82-2-554-7200

Fax: 82-2-558-5932 or

82-2-558-5934

Malaysia - Kuala Lumpur

Tel: 60-3-6201-9857

Fax: 60-3-6201-9859

Malaysia - Penang

Tel: 60-4-227-8870

Fax: 60-4-227-4068

Philippines - Manila

Tel: 63-2-634-9065

Fax: 63-2-634-9069

Singapore

Tel: 65-6334-8870

Fax: 65-6334-8850

Taiwan - Hsin Chu

Tel: 886-3-572-9526

Fax: 886-3-572-6459

Taiwan - Kaohsiung

Tel: 886-7-536-4818

Fax: 886-7-536-4803

Taiwan - Taipei

Tel: 886-2-2500-6610

Fax: 886-2-2508-0102

Thailand - Bangkok

Tel: 66-2-694-1351

Fax: 66-2-694-1350

EUROPE

Austria - Wels

Tel: 43-7242-2244-39

Fax: 43-7242-2244-393

Denmark - Copenhagen

Tel: 45-4450-2828

Fax: 45-4485-2829

France - Paris

Tel: 33-1-69-53-63-20

Fax: 33-1-69-30-90-79

Germany - Munich

Tel: 49-89-627-144-0

Fax: 49-89-627-144-44

Italy - Milan

Tel: 39-0331-742611

Fax: 39-0331-466781

Netherlands - Drunen

Tel: 31-416-690399

Fax: 31-416-690340

Spain - Madrid

Tel: 34-91-708-08-90

Fax: 34-91-708-08-91

UK - Wokingham

Tel: 44-118-921-5869

Fax: 44-118-921-5820

Table of contents Click a title to access it
Manual assistant
Powered by Anthropic
Waiting for your message
Product information

Brand : Microchip

Model : MCP1631HV

Category : Battery charger