The popular USB interface can charge a portable device while transferring data. But for high-capacity batteries, the 500-mA output current of USB hosts and powered hubs greatly extends the charging time. (Unpowered USB hubs supply no more than 100 mA.) Thus, a system that accepts charging power from an ac adapter as well as the USB port is more convenient. Such a system can charge from a notebook USB port when you're traveling, yet can charge faster via the adapter when you're at home or in the office. An external transistor current source adds dual-input capability to a single-chip lithium-cell charger (Figure 1). The chip, IC1, operates alone when you connect to USB power and allows you to pin-program it for a maximum charging current of either 500 or 100 mA. When you plug in an ac adapter, which the 600-mA components set, the external-transistor current source, Q2 and Q3, turns on and sets IC1's charging current to 500 mA. Because IC1 and Q2 both charge the battery under that condition, the total charging current is 1100 mA.

Q2 and Q3 form a current limiter for the ac adapter. The limiter allows Q2 and R1 to pass the additional 600 mA. When the voltage drop across R1 exceeds that across R2, which R2 and R5 set, Q2 begins to turn off. Q2 cancels VBE, enabling R1 to more accurately set the maximum current. Voltage across R3 sets the reference voltage, and the output current limits when the voltage drop on R1 matches the voltage on R3. Q3should have a beta higher than 200 at 1A, so that IC1's  pin can sink enough current to turn on Q3. High beta also minimizes error in the transistor current source. When IC1 changes from current mode to voltage mode at approximately 4.15V, IC1's  output turns off the transistor current source. IC1 remains on and finishes off the taper to full charge. It also remains on and continues to function when USB power is gone and only ac power remains.

IC1 also controls the prequalification current, which is the current level necessary to safely recover deeply discharged cells at low battery voltage. The  output assumes a high-impedance state during cell prequalification to ensure that the external current source remains off, and that the prequalification current of approximately 50 mA comes only from IC1. When you plug in the ac power, Q1 turns off to prevent back-feeding the USB input. You install Q1 "backward" with the drain connected to USB input side, so that USB power remains connected to the IN pin (IC1 pin 4) via Q1's body diode, even when Q1 is off.

Add current boost to a USB charger的更多相关文章

  1. Current limiter allows large USB bypass capacitance

    The USB (Universal Serial Bus) specification requires a connected USB device to present a load to th ...

  2. USB port 如何识别不同的Charger类型

    基于Qualcom 8960/8921平台 一,软件分析 1.  USB charger types & Power supply types USB_INVALID_CHARGER      ...

  3. C++ boost.python折腾笔记

    为了让当年研究生时写的图像处理系统重出江湖起到更大的作用,应研究生导师的意见,对原有的c++框架做了python扩展处理,为了避免遗忘,备注如下: 一.boost 编译 下载boost源码,这里使用b ...

  4. virtual box + win7 + usb + share folder

    1.enable virtaulization on BIOS 2.new machine setup, memory, harddisk size 3. 4.install extension pa ...

  5. imx6 usb otg config 配置

    imx6 usb的host和slave配置,配置之后,安装gadget模块,就能够在host和slave之间切换. 参考文档: i.MX 6Dual/6Quad Linux Reference Man ...

  6. VS2010安装Boost库

    source URL: http://stackoverflow.com/questions/2629421/how-to-use-boost-in-visual-studio-2010 While ...

  7. debian下使用dynamic printk分析usb转串口驱动执行流程

    看了一篇文章<debug by printing>,文中提到了多种通过printk来调试驱动的方法,其中最有用的就是"Dynamic debugging". “Dyna ...

  8. Power OFF and ON USB device in linux (ubuntu)

    Power OFF and ON USB device in linux (ubuntu) http://loginroot.com/power-off-and-on-usb-device-in-li ...

  9. LeetCode.989-数组形式的整数做加法(Add to Array-Form of Integer)

    这是悦乐书的第371次更新,第399篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第233题(顺位题号是989).对于非负整数X,X的数组形式是从左到右顺序的数字数组.例 ...

随机推荐

  1. Python3中字符串的编码与解码以及编码之间转换(decode、encode)

    一.编码 二.编码与解码 Python3中对py文件的默认编码是urf-8.但是字符串的编码是Unicode. 由于Unicode采用32位4个字节来表示一个字符,存储和传输太浪费资源,所以传输和存储 ...

  2. PIL图片合成旋转缩放

    用PIL实现图片的旋转,缩放,合成 我们需要知道合成位置的中心点坐标,用中心点坐标,不使用左顶点的坐标是由于缩放过程容易计算. 假设A是局部透明的图片,我们希望把B放在A的底部,仅从A的透明部分显示B ...

  3. CGIC函数说明

    CGIC函数说明 参考cgic函数说明_Embedded Resources Library Online (C)郝博士 cgiFormResultType cgiFormString( char * ...

  4. beego学习笔记(4):开发文档阅读(4)

    beego.Run() 这个运行后, 1)解析配置文件,也就是conf目录下的. 2)判断是否开启session,并作相应的工作 3)执行用户的hookfunc. 4)是否编译模板 5)是否开启文档功 ...

  5. PHP 执行系统外部命令的函数- system() exec() passthru()

    PHP 执行系统外部命令的函数: system() exec() passthru()区别:system() 输出并返回最后一行shell结果.exec() 不输出结果,返回最后一行shell结果,所 ...

  6. UAF漏洞学习

    产生原因: UAF漏洞的成因是一块堆内存被释放了之后又被使用.又被使用指的是:指针存在(悬垂指针被引用).这个引用的结果是不可预测的,因为不知道会发生什么.由于大多数的堆内存其实都是C++对象,所以利 ...

  7. pdb-不需要IDE也能调试

    python中有个pdb模块,使python代码也可以像gdb那样进行调试,一般情况下pdb模块可以在代码内直接使用,也可以通过命令行参数的形式添加该模块进行调试(python -m pdb file ...

  8. js正则获取url参数,包含hash[#]和search[?]两种通用

    function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&] ...

  9. LoadRunner配置方案

    1.配置方案运行时设置 选择“Tools”>“Options”.在“Options”对话框有“Run-Time Settings”(运行时设置).“Timeout”(超时).“Run-Time  ...

  10. ref:Struts2 命令执行系列回顾

    ref:http://www.zerokeeper.com/vul-analysis/struts2-command-execution-series-review.html Struts2 命令执行 ...