Rozwiązanie umożliwiające dostosowanie do obecnych limitów pobierania USB?

22

Podsumowanie: Konfiguruję obwód ładowania litowo-jonowy zasilany przez USB i oczywiście chciałbym pobierać maksymalny możliwy prąd ładowania sytuacyjnie - ale chcę również upewnić się, że nie naruszę specyfikacji USB przy pobieraniu prądu. Chociaż byłem w stanie spełnić jeden / dwa warunki USB indywidualnie, mam trochę problemów z wymyśleniem sprytnego sposobu na ich zaspokojenie. Oto co się dzieje ...

Cztery zasady specyfikacji USB (trzy dotyczące maksymalnych prądów pobierania i jedna dotycząca ograniczenia prądu rozruchowego) odnoszące się do mojej konkretnej sytuacji są następujące: (Uwaga: na tym diagramie pokazuję różne etapy czasowe :)

Zasady

Dobrą wiadomością jest ...

Zdarza mi się używać FTDI USB-UART IC, FT232R ( arkusz danych ), który zajmuje się wyliczaniem, a także ma dane wyjściowe wskazujące status wyliczenia i stan zawieszenia, które byłyby przydatne do ustalenia, kiedy narysować jaki poziom prądu.

Pomocne jest również to, że używam układu scalonego ładowarki Li-ion, MCP73871 ( arkusz danych ), który ma pin ChargeEnable, a także pin Prog2 i pin Prog1, które umożliwiają ustawienie limitów prądu ładowania.

Funkcje tych przydatnych pinów dla obu powyższych układów scalonych zostały podsumowane w moim (przybliżonym) schemacie poniżej. Nie jest jeszcze ukończony, jak wskazują znaki zapytania przy niektórych połączeniach:

Mój układ

Mój układ

Specyfikacje bieżącego losowania

Wreszcie, oto sytuacyjne specyfikacje poboru prądu dla dwóch układów scalonych. Oczywiście pobory prądu należy również uwzględnić w limitach poboru prądu 0,5 / 100/500 mA na zasilaniu USB: Bieżące losowanie

PYTANIE: Wydaje się, że istnieje rozwiązanie pozwalające dostosować mój układ, aby spełnić wszystkie cztery zasady / warunki jednocześnie, ale nie widzę tego; Jakieś pomysły?

Jak widzieliście wcześniej w moim układzie, skonfigurowałem obwód niepodłączony (kombinacja RC na MOSFET) dla problemu miękkiego startu; i mam rezystor ustalający limit na pinie PROG1, który może być może być użyty jako część dzielnika do częściowego rozwiązania problemu 500mA vs 100mA vs 0,5mA (częściowo w oparciu o strategię FTDI w tej notatce aplikacji ). Ale to tak daleko, jak udało mi się dotrzeć.

zgryz
źródło

Odpowiedzi:

11

„Urządzenie MCP73871 w szczególności przestrzega bieżących limitów regulowanych przez specyfikację USB”. -MCP73871

Nie musisz niczego ograniczać. Twoje rozwiązanie MOSFET przydałoby się tylko do ograniczenia prądu rozruchowego ze względu na obciążenie pojemnościowe, ale twój pin VDD nie jest pojemnościowy, ani ten obwód nie byłby już włączony. Wszystko, co musisz zrobić, to dowiedzieć się, jak używać #PWREN i #SLEEP do przełączania różnych wartości rezystorów. MCP73871 zajmie się resztą.

  1. Wystarczy podłączyć #SLEEP do #CE, aby zająć się „gotowością”.
  2. Dodaj falownik między #PWREN i # PROG2, ale upewnij się, że wejście zmiennoprzecinkowe ustawia domyślnie wartość wyjściową falownika na NISKI.
  3. Umieść menu rozwijane 2,2 tys. Na # PROG1

Uwaga: upewnij się, że masz R1, ponieważ #PWREN będzie jechał wysoko i musisz ograniczyć prąd do NPN.

wprowadź opis zdjęcia tutaj

Podpalacz analogowy
źródło
To brzmi poprawnie; Mam zamiar przyjrzeć się tej metodzie, na wypadek, gdyby okazało się, że jest jakikolwiek przypadek, który się nie spełnia, i skomentuję, jak tylko ją
sprawdzę
daj mi znać, jeśli potrzebujesz pomocy z wartościami rezystorów
Analog Arsonist
1

Być może przydatny byłby tutaj reset kontrolera; podłącz jego wyjście do sieci RC w celu uruchomienia. Następnie weź SLEEP, odwróć go wraz z sygnałem resetowania i podaj do CE. W przypadku PWREN utwórz dzielnik napięcia o napięciu około 1,5 V. Przełóż go przez odwracający komparator w stosunku do 1 V i podaj go do PROG2.

Ignacio Vazquez-Abrams
źródło
Czy możesz narysować schemat, znacznie łatwiej byłoby zastosować się do objaśnienia tekstu, a następnie użyć tekstu do wyjaśnienia schematu.
Kortuk