Podzespoły do interfejsów zasilania w USB-C z oferty STMicroelectronics

Podzespoły do interfejsów zasilania w USB-C z oferty STMicroelectronics
Pobierz PDF Download icon
Standard USB powstawał w czasach, gdy najbardziej powszechne w użyciu były komputery PC. Do komunikacji z urządzeniami peryferyjnymi używano wtedy głównie portów szeregowych RS232 (myszki, klawiatury) i portów równoległych Centronics, a właściwie dwukierunkowych portów IEEE1284 kompatybilnych z jednokierunkowym Centronics. Porty równoległe pozwalały na relatywnie dużą prędkość transmisji (3 Mb/s) i dlatego były używane do sterowania drukarkami, skanerami itp. Oba standardy, równoległy i szeregowy, były łatwe w sprzętowej implementacji, ale sprawiały trudności eksploatacyjne. Każde urządzenie musiało mieć swój driver, który trzeba było zainstalować "ręcznie", z czym nie radził sobie przeciętny użytkownik komputera. Standard USB miał zastąpić oba przestarzałe rozwiązania dzięki dużej prędkości transmisji oraz mechanizmowi automatycznego wykrywania urządzenia i instalowania sterownika.

Takie dość rewolucyjne jak na tamte czasy rozwiązanie bardzo ułatwiało przeciętnemu użytkownikowi eksploatację komputera, ale jednocześnie mocno utrudniało pracę projektantom urządzeń komunikujących się z komputerem za pomocą USB. Nawet dzisiaj mimo dużego wsparcia sprzętowego (sprzętowe moduły USB z układami taktowania) i programowego (biblioteki ze stosem USB) poprawne zaprojektowanie połączenia poprzez USB nie jest zadaniem banalnym.

Z czasem, głównie za sprawą urządzeń mobilnych, możliwość zasilania urządzeń przez złącze USB stała się tak samo ważna, jak możliwość transmisji danych. Wiele nowoczesnych urządzeń ładuje swoje akumulatory lub pobiera zasilanie ze złącza USB w laptopie, samochodzie czy samolocie. Złącze USB stało się wszechobecnym gniazdem zasilania wykorzystywanym przez telefony komórkowe, odtwarzacze MP3 i inne urządzenia przenośne. Użytkownicy potrzebują USB nie tylko do przesyłania danych, ale także do zasilania.

Mimo ograniczeń dostarczanej mocy zasilanie przez złącze USB okazało się tak wygodne i popularne, że zdecydowano się zdefiniować nowy standard zasilania USB PD 2.0 (Power Delivery) mający następujące funkcje:

- Obciążalność do 100 W.
- Możliwość dwukierunkowego zasilania urządzenia peryferyjnego oraz hosta. Kierunek przesyłania energii nie jest ustalony na sztywno. Wcześniej zawsze źródłem zasilania był host.
- Optymalizacja zarządzania energią indywidualnie dla wielu urządzeń peryferyjnych pozwalająca na dynamiczne określenie wymagań odnośnie do dostarczanej mocy zasilania. Kiedy aplikacja zacznie potrzebować więcej mocy, to USB PD 2.0 może ją dostarczyć.
- Inteligentne i elastyczne zarządzanie poziomem zasilania poprzez opcjonalną komunikację z hostem - komputerem PC.
- Możliwość negocjowania wymaganego napięcia zasilającego w zakresie 5…20 V. Pozwala to na przykład małym urządzeniom, takim jak zestawy słuchawkowe, na negocjowanie wymaganego napięcia zasilającego.

Obecnie połączenie w standardzie USB 2 zapewnia do 2,5 W mocy (5 V 500 mA) – wystarcza, aby naładować telefon lub tablet, ale to wszystko. Jak już wiemy, specyfikacja USB PD 2.0 zwiększa tę moc do 100 W. Taka moc może być przenoszona w tym samym czasie, gdy urządzenie transmituje dane przez połączenie. Można sobie wyobrazić transmisję danych i jednoczesne zasilanie laptopa (z ładowaniem baterii), który może pobierać moc do 60 W.

Specyfikacja USB PD 2.0 jest ściśle powiązana ze standardem złącza USB Type-C. Często mylnie łączy się USB-C ze standardem USB3, czy USB3.1. Twórcy standardu USB-C nie narzucają takiego powiązania i obecnie spotyka się urządzenia ze złączem USB-C pracującym z portem USB2.0.

Najbardziej znanym dotychczas złączem USB jest USB Type-A pokazane na rysunku 1. Można go znaleźć w każdym z urządzeń pełniących funkcje hosta lub huba USB. Nawet jeśli standard zmieniał się z wersji z USB 1 na USB 2 i potem na najnowsze USB 3, to to złącze pozostało niezmienione. Gdy urządzenia stają się mniejsze i cieńsze, te stosunkowo duże porty USB po prostu się nie mieszczą. Doprowadziło to do powstania mniejszych złączy USB, takich jak złącza USB mikro i USB mini. Obecnie w hostach USB jest najczęściej złącze USB Type-A, a w urządzeniach USB mikro i coraz rzadziej USB mini.

Standard USB-C za jednym zamachem rozwiązuje kilka praktycznych problemów z dotychczasowymi typami złączy. Po pierwsze, definiuje gniazdo, które zastępuje duże złącze USB Type-A. Wszystkie złącza i gniazda są małe – ich wielkość jest porównywalna ze złączami USB mikro. Po drugie, złącze jest symetryczne. Wszystkie dotychczasowe złącza USB były asymetryczne. To znaczy, można je było połączyć przy określonym wzajemnym położeniu gniazda i wtyczki. Często pierwsza próba połączenia się nie udawała i trzeba było odwracać wtyczkę. Tu nie ma znaczenia, jak włoży się wtyk do gniazda. Jest to standard pojedynczego złącza i dla hosta, i dla urządzenia, który może być używany przez każde urządzenie. Wystarczy jeden kabel, niezależnie, czy dołącza się zewnętrzny dysk twardy do laptopa, czy ładuje się smartfon z ładowarki USB. To jedno złącze jest wystarczająco małe, aby można je było zmieścić w bardzo cienkim urządzeniu przenośnym, ale wystarczająco „silne”, aby przyłączyć urządzenia peryferyjne do komputera. Typowy kabel ma wtyki USB typu C na obu końcach.

Wyprowadzenia styków gniazd i wtyków standardu USB-C pokazano na rysunku 2rysunku 3. W porównaniu z wcześniejszymi standardami mamy więcej styków:

- „GND” (4 styki) i „VBUS” (4 styki) – złącza do przesyłania napięcia zasilania (dla USB2.0 maksymalnie +5 V/500 mA; dla USB-C +20 V/5000 mA).
- „D+” i „D–” – połączenie danych dla standardu USB2.0.
- „RX1–”, „RX1+”, „TX1–”, „TX1+” – połączenia danych SuperSpeed standardu USB3.1.
- „SBU1”, „SBU2” – dodatkowe połączenia dla mniejszej prędkości.
- „CC1”, „CC2” – połączenia danych przeznaczone do sygnalizowania faktu połączenia, identyfikacji położenia wtyku względem gniazda i do negocjowania trybu pracy złącza USB i parametrów zasilania.

Styki są rozmieszczone symetrycznie, co umożliwia dowolne wkładanie wtyku do gniazda. Szybka magistrala danych SuperSpeed w połączeniu ze standardem USB3.1 pozwala na przesyłanie, na przykład, cyfrowego strumienia obrazu w rozdzielczości Full HD. Nas jednak w pierwszej kolejności będzie interesowała praktyczna realizacja standardu zasilania USB PD2.0 i związana z nim magistrala CC zbudowana z linii CC1 i CC2.

Układ STUSB4710

Rozbudowane układy dostarczania energii wymagają specjalnych, zaawansowanych technicznie układów zasilania. Jedną z realizacji sterownika USP PD jest układ STUSB470 produkowany przez firmę STM.

Układ STUSB470 jest autonomicznym sterownikiem USB PD2 przeznaczonym do pracy w funkcji źródła zasilania. Jedną z jego właściwości jest możliwość pracy bez konieczności komunikacji z zewnętrznym sterownikiem. Jest dobrym wyborem w sytuacji, gdy nie ma urządzenia sterującego USB PD lub zasoby takiego urządzenia są ograniczone. Stos USB PD2 w układzie STUSB470 jest zaimplementowany sprzętowo. Wbudowane oprogramowanie łączy się z zasilanym urządzeniem i przeprowadza bezpieczną, poprawną negocjację warunków zasilania. W układ wbudowano następujące funkcje:

- Wykrywanie połączenia między dwoma interfejsami USB.
- Ustanowienie poprawnego połączenia host – urządzenie.
- Wykrywanie i skonfigurowanie Vbus w trybach pracy: z małym, średnim lub dużym prądem obciążenia.
- Analizowanie orientacji dołączonego wtyku kabla.
- Negocjowanie dostawy energii przez USB z urządzeniem obsługującym standard USB PD.
- Odpowiednie konfigurowanie źródła zasilania.
- Monitorowanie linii Vbus oraz zapewnianie ochrony urządzenia przyłączonego do magistrali.

Schemat blokowy STUSB470 pokazano na rysunku 4. Mimo że układ może pracować autonomicznie, to wyposażono go w interfejs I2C pozwalający na komunikację z hostem/masterem. Możliwa jest zmiana domyślnych ustawień poprzez zapisanie wewnętrznych rejestrów i kontrola stanu pracy układu i magistrali USB-C (w zakresie USB PD) przed odczytywanie rejestrów statusowych. Dokładny opis rejestrów i protokołu wymiany danych za pomocą I2C jest zawarty w dokumentacji układu.

Jeżeli popatrzymy na wyprowadzenia złącza USB-C pokazane na rysunku 2 zobaczymy tam dwa piny oznaczone CC1 i CC2. Tworzą one magistralę przeznaczoną do wykrywania podłączenia do portu i określenia orientacji włożenia wtyku do gniazda. STUSB470 ma wbudowany blok kontrolny CC line access sterujący magistralą CC i współpracujący z warstwą protokołu USB CC oraz sterownikiem PORT C. Blok interfejsu BMC jest przeznaczony do transmisji danych poprzez linie CC z urządzeniem negocjującym parametry zasilania.

Stan linii CC1 i CC2 oraz napięcie na VBUS są podstawowymi danymi dla pracy stosu USB PD2. Stan linii CC1 i CC2 jest używany do:

- Wykrywania połączenia pomiędzy dwoma portami USB np. pomiędzy źródłem napięcia i obciążeniem. Każda z linii CC źródła ma dołączony rezystor Rp podłączony do plusa zasilania a każda z linii CC obciążenia rezystor Rd podłączony do masy. Monitorowanie napięcia na liniach CC1 i CC2 pozwala na wykrycie połączenia obu portów (po połączeniu tworzy się dzielnik napięcia i napięcie na CC1 i CC2 obniża się).
- Wykrywanie orientacji włożonego kabla. Po wykryciu połączenia jeden z pinów CC przejmuje rolę źródła napięcia zasilania VCONN. Drugi pin CC zależnie od pozycji wskazuje, która z magistral SuperSpeed (TX1/RX1 lub TX2/RX2) będzie używana do transmisji danych.
- Ustalenie roli układów na magistrali (host – urządzenie).
- Konfigurowanie wydajności prądowej źródła zasilania. W procesie inicjalizacji określa to wartość rezystancji Rp dołączanej po stronie źródła. Potem możliwa jest programowa negocjacja.

Zależnie od wartości rezystora Rp możliwe jest „zaprogramowanie” wydajności standardowej USB (1,5 A lub 3 A przy +5 V).

Blok BMC (BMC Driver) jest fizycznym połączeniem pomiędzy warstwą protokołu USB PD i blokiem kontrolnym wyprowadzeń CC. W trybie pracy TX konwertuje dane zakodowane w BMC (Biphase Mark Codnig) i steruje liniami CC do pracy z prawidłowym napięciem. W trybie RX odczytuje stan linii CC i konwertuje na dane przesyłane do warstwy protokołu. BMC jest używany do transmisji danych przez linie CC1 i CC2 pomiędzy sterownikiem źródła a sterownikiem obciążenia. Transmisja danych umożliwia programową negocjację parametrów zasilania przez USB-C.

Blok warstwy protokołu jest odpowiedzialny za zarzadzanie komunikatami przesyłanymi z i do warstwy fizycznej. Wbudowane mechanizmy automatycznie zarządzają timeoutami odbioru danych, licznikami komunikatów i licznikami ponowień przesłania komunikatów. Warstwa protokołu współpracuje z blokiem policy engine.

Blok policy engine negocjuje zasady dotyczące zasilania dołączonego urządzenia pracującego w funkcji źródło energii. Ma zaimplementowane maszyny stanów, które kontrolują tworzenie i zarządzenie komunikatami. Policy engine wykorzystuje warstwę protokołu do wysyłania i odbierania komunikatów. Statusy odczytywane z bloku portów oraz układu monitorowania napięcia są intepretowane w bloku policy manager.

Standard USB PD 2.0 dopuszcza różne napięcia na liniach Vbus, więc układ sterujący musi mieć możliwość pomiaru napięcia podawanego na Vbus i jeżeli nie jest takie, jak wymagane, to nie powinno się pojawić na linii Vbus złącza USB-C. Pomiar wykonuje blok Voltage Sense poprzez linię Vbus_Sense. Po wykryciu prawidłowego połączenia typu źródło – obciążenie i prawidłowego napięcia, które ma być podawane na Vbus, układ uaktywnia wyjście sterujące VBYS_EN_SRC podające napięcie Vbus na magistralę USB. Takie działanie pozwala wykryć wszelkie nieprawidłowości typu zbyt wysokie lub zbyt niskie napięcie. W razie wykrycia nieprawidłowości STUSB4710 reaguje w sposób następujący: uniemożliwia połączenie pomiędzy źródłem zasilania i wyprowadzeniem Vbus oraz dezaktywuje połączenie ścieżki zasilania Vbus. Do warstwy protokołu są wysyłane odpowiednie komunikaty o błędach.

Napięcie na wyjściu Vbus jest ustawiane przez cztery wyjścia SEL_PDO (SEL_PDO1…SEL_PDO5). Każda zmiana na wyjściach SEL_PDO powoduje automatyczną zmianę napięcia podawanego na linię Vbus. W czasie zmian poziomów na wyjściach SEL_PDO monitorowanie napięcia Vbus jest blokowane przez 280 ms. Jeżeli przełączamy napięcie z wyższego na niższe, to jest aktywowany układ rozładowania (discharge path), który również działa przez 280 ms. Układ rozładowania jest połączony z linią pomiaru napięcia VBUS_SENSE. Zapobiega to błędnemu pomiarowi napięcia na Vbus spowodowanemu przez pojemności w układzie pomiarowym. Układ rozładowania jest również uruchamiany po wystąpieniu błędu (recovery state error). Mechanizm rozładowywania jest domyślnie włączony. Można go wyłączyć programowo poprzez zapisanie odpowiedniego rejestru układu STUSB4710. Programowo można również zmienić czas działania rozładowania.

Jednym z najważniejszych ustawień jest wartość napięcia VBUS i wartość graniczna prądu pobieranego ze źródła napięcia. O napięciu wyjściowym i wydajności prądowej decyduje ustawienie nazywane PDO zapisane w rejestrach układu. Ma on możliwość zaprogramowania pięciu PDO, z których pierwszy jest ustawiany tuż po ustanowieniu połączenia z odbiornikiem (obciążeniem). Pozostałe ustawienia są używane w wyniku programowej negocjacji ze sterownikiem obciążenia.

tabeli 1 umieszczono zestawienie domyślnego przypisania ustawień napięcia i prądu właściwości PDO. Żeby je zmienić, trzeba zapisać odpowiedni rejestr za pomocą interfejsu I2C. Na rysunku 6 pokazano fragment schematu aplikacji STUSB z układem kontroli napięcia wyjściowego. Linie portów SEL_PDO powiązane z ustawieniami PDO dołączają rezystory do dzielnika ustawiającego napięcie wyjściowe regulatora ST1S14PHR. Sposób wyliczenia wartości rezystorów dzielnika został zamieszczony w dokumentacji układu.

STUSB4710 – moduł ewaluacyjny

Producent układu – firma STMicroelectronics – przygotował moduł ewaluacyjny z układem STUSB4710 (rysunek 7). Pracuje on jako źródło napięcia Vbus USB PD 2.0 dla portu USB-C i może być użyty do demonstracji działania właściwości STUSB4710. Mimo niewielkich wymiarów, moduł jest rozbudowany i zawiera wszystkie niezbędne elementy do rozpoczęcia pracy z USB-C:

- Złącze USB-C (pracujące jako źródło napięcia).
- Układ STUSB4710 wspierający USB-C r1.2 i USB PD r2.0.
- Wbudowaną, programowaną przetwornicę DC/DC dostarczającą napięcie 20 V przy prądzie obciążenia do 3 A.
- Układ włączania napięcia VBUS.
- Układ rozładowania (discharge path).
- Wsparcie VCONN (programowane do 600 mA).
- Wsparcie dla maksymalnie pięciu Power Data Objects (PDO), czyli kombinacji napięcia wyjściowego i wydajności prądowej źródła.
- Prekonfigurowane PDO.
- Zabezpieczenia nadnapięciowe.
- Kompatybilność z modułem P_NUCLEO_USB002 mogącym negocjować z STSUSB4710 parametry zasilania.

Schemat funkcjonalny zestawu ewaluacyjnego STUSB4710 pokazano na rysunku 8. Układ ustawiania parametrów zasilania jest oparty na układzie przetwornicy DC-DC ST1S14. Rezystory ustalające napięcie na linii VSRC są wł?czane w?uk?ad sprz??enia zwrotnego przez wyj?cia SEL_PDO2?SELPDO5. Fragment obwodu ustalaj?cego napi?cie wyj?ciowe VSRC pokazano na?ączane w układ sprzężenia zwrotnego przez wyjścia SEL_PDO2…SELPDO5. Fragment obwodu ustalającego napięcie wyjściowe VSRC pokazano na rysunku 9.

Każda z linii steruje driverem zbudowanym z dwóch tranzystorów lub może być połączona bezpośrednio z rezystorami poprzez zwory SB11…SB21 (domyślnie rozwarte). Napięcie VSRC jest dołączane do linii VBUS przez klucz tranzystorowy zbudowany z dwóch tranzystorów T41A i T41B i sterowany z wyjścia VBUS_EN_SRC. Układ rozładowywania z tranzystorem T35 jest sterowany z wyjścia VBUS_EN_SNK (VBUS_DISCH). Napięcie VBUS jest podawane bezpośrednio na wejście VBUS_SENSE układu (rysunek 10). Do złącza USB-C układu zasilania są doprowadzone: napięcie VBUS, masa układu zasilania GND oraz sygnał z linii CC1 i CC2 (rysunek 11).

Układ STUSB1602

Układ STUSB4710 zaprojektowano do funkcji sterownika źródła zasilania USB PD2.0. Jednak są takie urządzenia USB, które mogą pracować w funkcji źródła zasilania, odbiornika zasilania (obciążenie) lub w trybie Dual Role Power (DRP), czyli źródło zasilania i obciążenie.

Oprócz zasilania interfejs USB służy do przesyłania danych. Urządzenia dołączone do magistrali mogą pracować jako host  lub USB hub. W USB-C taki tryb pracy nazywany jest Downsteram Facing Port (DFP). Złącze urządzenia jest nazywane Upstream Facing Port (UFP). Tryb pracy przesyłania danych jest powiązany z trybem przesyłania energii (zasilania). Port DFP podczas inicjalizacji domyślnie musi być źródłem zasilania VBUS. Z kolei UFP jest domyślnie obciążeniem. Potem funkcje zasilania i przesyłania danych mogą być dynamicznie, programowo zmieniane w trakcie pracy portów. Na rysunku 12 pokazano architekturę połączenia urządzeń na magistrali

Układ STUSB1602 jest sterownikiem, który może wykonywać wszystkie funkcje zasilania. Jego schemat funkcjonalny pokazano na rysunku 13. Podstawowe funkcje realizowane przez układ są następujące:

- Wykrywanie połączenia między dwoma portami USB.
- Ustanowienie połączenia źródło – obciążenie.
- Ustalenie trybu pracy dołączonego urządzenia: źródło lub obciążenie.
- Analizowanie orientacji włożenia kabla USB-C i określenie kanału przesyłania danych.
- Konfigurowanie i monitorowanie napięcia VBUS.
- Wspieranie negocjacji USB PD.

Jak już wiemy, do negocjowania połączenia są używane linie CC1 i CC2 oraz rezystory Rp (podłączenie do źródła zasilania) i Rp (podłączenie do masy). Zasadę działania magistrali CC pokazano na rysunku 14.

Rezystancje oporników Rp i Rd dołączonych do linii CC1 i CC2 mają wpływ na parametry pracy układu. Sterownik źródła zasilania musi dołączać rezystory podciągające Rp do obu swoich wyprowadzeń CC1 i CC2. Sterownik obciążenia dołącza rezystory Rd (pull down) do obu swoich wyprowadzeń CC (CC1 i CC2). W trybie DRP (Dual Role Power) sterownik musi być wyposażony w oba rezystory Rp i Rd i w trakcie zamiany funkcji ze źródła na obciążenie i odwrotnie musi mieć możliwość ich dynamicznego przełączania zależnie od załączonej funkcjonalności.

W momencie inicjalizacji źródło napięcia może dostarczać napięcie +5 V o obciążalności domyślnej. Rezystancja Rp określa wydajność źródła napięcia w chwili inicjalizacji połączenia, kiedy nie jest jeszcze możliwe wykonanie programowej negocjacji pomiędzy oboma układami na magistrali. Wartość rezystancji Rp zależy od napięcia, do którego jest dołączony rezystor (+5 V lub +3,3 V) i od sygnalizowanej obciążalności źródła (tabela 2).

W specyfikacji USB PD jest zapisane obowiązkowe określanie orientacji włożenia wtyku. W tym celu źródło zasilania monitoruje stan obu linii CC. Po połączeniu portów jedna z linii CC jest poprzez kabel połączona rezystorem Rd obciążenia do masy. Jest to sygnalizacja wykonania połączenia. Dodatkowo, sterownik źródła mierzy napięcie na tej linii i wartość tego napięcia jest dodatkową informacja dla sterownika źródła. W tym samym czasie druga z linii CC jest łączona do masy poprzez rezystor Ra. Wykrycie tej rezystancji w połączeniu z napięciem wykrytym na dzielniku Rp/Rd daje sterownikom informację o orientacji włożenia kabla. Po wykonaniu i wykryciu połączenia i orientacji kabla sterowniki źródła zasilania i obciążenia przechodzą do negocjowania zapotrzebowania na energię i możliwości jej dostarczenia. Każde z urządzeń wyposażonych w port USB-C powinno standardowo dostarczać przez wyprowadzenia Vbus moc 15 W, czyli do 3 A przy napięciu +5 V. Dostarczanie większej mocy (od 15 W do 100 W – 5 A przy +20 V) musi być negocjowane przez protokół USB Power Delivery.

Kiedy połączenie jest ustanowione, linie CC są doł?czane do?bloku BMC (ączane do bloku BMC (rysunek 15). Umożliwia to komunikację pomiędzy połączonymi urządzeniami magistralą USB-C. Mikrokontroler wykorzystujący magistralę SPI może torem komunikacyjnym CC przekazywać dane do drugiego urządzenia. Blok BMC jest również umieszczony w poprzednio opisywanym sterowniku STUSB4710. Negocjacja warunków zasilania wygląda w skrócie następująco:

- W pierwszym kroku źródło zasilania (np. ze sterownikiem STUSB4710) wysyła komunikat Source Capabilities informujący obciążenie o swoich możliwościach dostarczania mocy zasilania.
- Sterownik obciążenia wysyła komunikat Request o żądanym profilu zasilania (napięcie i wydajność prądowa).
- Sterownik źródła akceptuje lub odrzuca żądanie dostarczenia profilu zasilania.
- Jeżeli sterownik źródła akceptuje żądanie sterownika obciążenia, to wysyła komunikat Accept.
- Potem sterownik źródła ustawia żądane parametry zasilania i wysyła komunikat Ps_Ready.

Każda odebrana wiadomość musi być potwierdzona komunikatem GoodCRC. Brak tego potwierdzenia (błąd transmisji) powoduje miękki restart parametrów protokołu i rozpoczęcie negocjacji od początku. Jeżeli błąd transmisji nadal się utrzymuje, to wykonywany jest restart sprzętowy (hard reset).

Zestaw ewaluacyjny P_NUCLEO_USB002

Układ STUSB1602 może być konfigurowany do pracy w funkcji źródła lub obciążenia. Może też negocjować z innym układem parametry zasilania poprzez magistralę CC sprzężoną z interfejsem SPI. Blok interfejsu SPI-CC pozwala na łatwe dołączenie dowolnego mikrokontrolera i przeprowadzenie negocjacji parametrów łącza. Producent układu przygotował zestaw ewaluacyjny składający się z dwóch płytek: P-NUCLEO-USB002 expansion board oraz NUcleo-F072RB. Płyta P_NUCLEO_USB002 expansion board jest wyposażona w:

- Dwa porty USB-C DRP Port0 i PORT1 sterowane przez dwa układy STUSB 1602.
- Opcjonalny czujnik prądu w gałęzi Vbus.
- Złącze służące do doprowadzenia napięcia zasilania.
- Zamontowany na płytce układ zarządzania napięciem zasilania Vbus.
- Diody LED wyświetlające status portu USB oraz sygnalizujące napięcie zasilania.

Wyprowadzenia do podłączenia interfejsu USB 2.0 (USB 2.0 Comm Bridge) dostępne dla obu portów USB-C. Jak wspomniano, USB-C i USB PD2 nie wymaga do pracy interfejsu USB 3 lub USB 3.1.

Na rysunku 17 zaprezentowano płytkę rozszerzenia z zaznaczonymi elementami poszczególnych bloków funkcyjnych.

Seria płytek Nucleo jest doskonale znana użytkownikom mikrokontrolerów STM32. Płytki różnią się między sobą zastosowanym mikrokontrolerem, ale mają ten sam standard wyprowadzeń – Arduino Uno Rev 3. Ponadto, umieszczono tu wyprowadzenia ST morpho extension. Na płytce zastosowano mikrokontroler STM32F072RBT6 z rdzeniem Cortex-M0, Flash 128 kB i SRAM 16 kB. Standardowo na płytkach Nucleo umieszcza się programator ST-LINK V2-1 połączony z mikrokontrolerem przez SWD. Ważnym elementem jest port USB2.0 spełniający – zależnie od drivera – funkcję portu wirtualnego COM, interfejsu pamięci masowej lub portu debugowania. Oczywiście, przez ten port jest zasilana płytka Nucleo. Na rysunku 18 pokazano schemat blokowy modułu ewaluacyjnego.

Dokładną konfigurację płytki rozszerzenia oraz płytki Nucleo, dołączenie napięć zasilających i testowanie działania można znaleźć w dokumencie UM2191 User Manual. W komplecie z zestawem ewaluacyjnym jest dostarczany kabel USB-C. Mając do dyspozycji opisywany wcześniej moduł zasilania STUSB47 i moduł P_NUCLEO_USB002, można zbudować kompletny tor do testowania zasilania przez złącze USB-C. W trakcie testów można próbować badać poprawność negocjacji dostarczanej mocy, poprawność wykrywania włożenia kabla oraz jego orientacji.

Na koniec

Standard złącza USB-C wraz z protokołem USB PD 2.0 umożliwia zaimplementowanie zupełnie nowych rozwiązań zasilających urządzenia elektroniczne. Maksymalna dostarczana moc na poziomie 100 W pozwala na np. zasilanie pracującego laptopa, w którym dodatkowo ładuje się bateria. W tym samym czasie może odbywać szybka transmisja danych w standardzie USB 3.1. Negocjowanie napięcia zasilającego umożliwia bardziej elastyczne podejście do projektowania urządzeń zasilanych przez USB. Mogą to być na przykład urządzenia audio współpracujące z komputerem zasilane przez USB. Do tej pory można było je zasilić napięciem +5 V z wydajnością 500 mA, co w istotny sposób ograniczało parametry np. wzmacniacza audio. Można sobie również wyobrazić układy automatyki czy pomiarowe wykorzystujące takie możliwości zasilania.

Standard USB-C zaczyna być wprowadzany na rynek. Najczęściej jest wykorzystywany w połączeniu z USB 2 lub USB 3. Zapewne obecnie trudno znaleźć układy wykorzystujące pełne możliwości USB-C. Trudno teraz ocenić, czy wszystkie możliwości zasilania standardu USB-C w trybie PD2 się przyjmą i będą popularne. Ja mam trochę obaw o miniaturowe styki do połączenia Vbus i GND. Łączenie prądu 5 A przy napięciu 20 V będzie wymagało styków precyzyjnie wykonanych, bardzo dobrych jakościowo, co na pewno nie będzie łatwe z punktu widzenia technologii oraz jakości użytych materiałów.

Nowy standard bardzo mi się podoba. Symetryczne złącza i wtyki, sprytny analogowy sposób informowania obciążenia o domyślnej wydajności źródła, możliwości dynamicznego konfigurowania układu zasilanie-obciążenie dla portów DRP pokazują, że wiele rzeczy przemyślano i zrobiono lepiej niż w starszych standardach USB. Wszystko wskazuje na to, że porty USB ze złączami Type A po stronie hosta oraz USB mini i mikro po stronie współpracujących urządzeń w najbliższym czasie przejdą do lamusa.

Tomasz Jabłoński, EP


Artykuł ukazał się w
Elektronika Praktyczna
luty 2018
DO POBRANIA
Pobierz PDF Download icon

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio marzec - kwiecień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje marzec 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich kwiecień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów