The USB (Universal Serial Bus) specification requires a connected USB device to present a load to the host or hub of no greater than 10 µF in parallel with 44Ω, including the effects of any bypass capacitance visible through the device’s voltage regulator. This limit avoids excessive voltage drop at the device as inrush current charges its capacitance. Occasionally, a bus-powered device needs more than 10-µF bypass capacitance to provide an adequate reservoir for current spikes. The circuit in this Design Idea repurposes a Linear Technology LTC6102 precision current-sense amplifier, IC1, to limit inrush current below the specified maximum, allowing the device to use more capacitance when necessary.

The LTC6102 usually translates the voltage across a current-sense resistor to a larger ground-referenced voltage in an output resistor. The part features an amplifier with low offset voltage, letting you use low-value sense resistors. In the usual circuit configuration, output current flows through an onboard FET whose source connection connects to a force pin separate from the amplifier input pin to minimize errors across trace and pin resistances.

This circuit grounds the LTC6102’s output pin and uses the onboard FET as a source follower to drive the gate of an external current-limiting FET (Figure 1).

The feedback loop around the LTC6102 maintains equal voltages at the positive and negative inputs of the amplifier, pins 8 and 1 of IC1. Resistor divider R2/R4 sets the positive input of the amplifier, IC1’s Pin 8, approximately 2 mV below the 5V USB-voltage rail. With Q1 initially off at device connection, the negative amplifier input, IC1’s Pin 1, is higher than the positive input, causing the amplifier’s output to go low. As the amplifier’s output drops, the onboard FET follows, pulling the gate of Q1 low and turning it on. Current increases in Q1 until the voltage drop across sense resistor R1 matches the drop across resistor R2.

Resistor R3 and capacitor C2 compensate the feedback loop against oscillation and slow the turn-on of Q1, preventing an initial current spike when the device connects to the bus. Capacitor C3 bypasses a regulator on IC1. Resistor R7 meets the allowed maximum 1-mA current through the FET on IC1. Q1 turns on at a gate voltage low enough that it does not exceed the input range of 4V positive voltage to IC1’s Pin 7 to Pin 2.

Instead of the large capacitive load of C1, the circuit presents a resistive load to the USB host equal to R1(R2+R4)/R4=49.8Ω, lighter than the 44Ω maximum requirement. After C1 charges, the circuit continues to limit current below the 100-mA maximum permitted to a low-power USB device. Upon configuration, the device can raise the current limit to the 500-mA maximum permitted to a high-power device by turning on FET Q2 to place R5 in parallel with R4, increasing the voltage maintained across sense resistor R1.

Current limiter allows large USB bypass capacitance的更多相关文章

  1. Add current boost to a USB charger

    The popular USB interface can charge a portable device while transferring data. But for high-capacit ...

  2. LDO current regulator for power LED

    LDO current regulator for power LED Challenge You've got a power LED? Great! Build a flash light! Wh ...

  3. 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 ...

  4. RASPBERRY PI 外设学习资源

    参考: http://www.siongboon.com/projects/2013-07-08_raspberry_pi/index.html Raspberry Pi         Get st ...

  5. How to evaluate a transimpedance amplifier (part 2)

    In my previous blog on "How to evaluate a transimpedance amplifier, part 1", we looked at ...

  6. uboot 各种烧写命令

    norflash 烧写 (7) Nor Flash指令 Nor Flash 的命令经常用于烧写数据到Nor Flash . flinfo  打印Flash存储器的信息,并列出所有Sector. fli ...

  7. Welcome to LED Control Wiki

    About this project This project was developed after I had to find out that controlling my RGB ambien ...

  8. Transistor 晶体管 场效应 双极型 达林顿 CMOS PMOS BJT FET

    Transistor Tutorial Summary Transistor Tutorial Summary Bipolar Junction Transistor Tutorial We can ...

  9. ARM上的linux如何实现无线网卡的冷插拔和热插拔

    ARM上的linux如何实现无线网卡的冷插拔和热插拔 fulinux 凌云实验室 1. 冷插拔 如果在系统上电之前就将RT2070/RT3070芯片的无线网卡(以下简称wlan)插上,即冷插拔.我们通 ...

随机推荐

  1. 服务号使用微信网页授权(H5应用等)

    获取授权准备 AppId 服务号已经认证且获取到响应接口权限 设置网页授权域名 公众号设置 - 功能设置 - 网页授权域名.注意事项: 回调页面域名或路径需使用字母.数字及"-"的 ...

  2. pandas安装及使用

    一. 安装pandas1. Anaconda        安装pandas.Python和SciPy最简单的方式是用Anaconda.Anaconda是关于Python数据分析和科学计算的分发包.2 ...

  3. 双系统卸载linux和装双系统的方法

    卸载linux系统: 因为本人装的是windows和Ubuntu,所以引导程序在linux系统里,linux系统可以引导windows系统,而Windows不能引导linux,所以需要修改引导程序,使 ...

  4. html学习-css

    1.css初识 css 中文解释:层叠样式表,把html比作骨骼的话,css就是衣服,他的外在都能通过css来修饰,js则是肌肉,能使html动起来.产生用户交互... 1.1css样式表类型 css ...

  5. vue单文件中scoped样式如何穿透?

    在vue文件中的style标签上,有一个特殊的属性:scoped.当一个style标签拥有scoped属性时,它的CSS样式就只能作用于当前的组件,也就是说,该样式只能适用于当前组件元素.通过该属性, ...

  6. jupyter notebook,弄起来

  7. html5本次存储几种方式

    一.cookies 大家都懂的,不必多说 二.sessionStorage/localStorage HTML5 LocalStorage 本地存储 说到本地存储,这玩意真是历尽千辛万苦才走到HTML ...

  8. Gitlab基本管理(二)

    一. Gitlab分支 1. 切换到项目位置. 2. 创建一个项目的一新分支. mike@win10-001 MINGW64 ~/cookbook/cookbook (master) $ git br ...

  9. ref:学习笔记 UpdateXml() MYSQL显错注入

    ref:https://www.cnblogs.com/MiWhite/p/6228491.html 学习笔记 UpdateXml() MYSQL显错注入 在学习之前,需要先了解 UpdateXml( ...

  10. 首次使用ideal构建maven项目web

    如附件 链接:https://pan.baidu.com/s/1oH-9VfIKnLPjVt-tOH7fZw 提取码:7s5t