Instrukcja obsługi zasilacza STM32 USB Type-C Power Delivery

Zasilanie STM32 USB typu C

Dane techniczne:

  • Model: TN1592
  • Wersja: 1
  • Data: 2025 czerwca XNUMX r.
  • Producent: STMicroelectronics

Informacje o produkcie:

Kontroler i moduł zabezpieczający STM32 Power Delivery
zapewnia zaawansowane funkcje zarządzania zasilaniem USB (PD) i
scenariusze ładowania. Obsługuje różne standardy i funkcje,
umożliwiają wydajne dostarczanie energii i przesyłanie danych przez USB
znajomości.

Instrukcje dotyczące stosowania produktu:

Funkcje przesyłania danych:

Produkt obsługuje funkcje przesyłania danych w celu zapewnienia wydajnej pracy
komunikacja przez połączenia USB.

Zastosowanie modułu VDM UCPD:

Moduł VDM UCPD zapewnia praktyczne wykorzystanie w zarządzaniu
tomtagi aktualnych parametrów przez połączenia USB.

Konfiguracja STM32CubeMX:

Skonfiguruj STM32CubeMX przy użyciu określonych parametrów dostępnych w
dokumentacje, w tym tabela szybkiego odniesienia w AN5418.

Maksymalny prąd wyjściowy:

Maksymalny prąd wyjściowy interfejsu USB można znaleźć w
specyfikacje produktu.

Tryb podwójnej roli:

Funkcja portu o podwójnej roli (DRP) umożliwia produktowi działanie jako
źródło lub odbiornik zasilania, powszechnie stosowane w urządzeniach zasilanych bateryjnie.

Często zadawane pytania:

P: Czy X-CUBE-TCPP jest wymagany podczas korzystania z X-NUCLEO-SNK1M1
tarcza?

A: X-CUBE-TCPP można opcjonalnie stosować z X-NUCLEO-SNK1M1
tarcza.

P: Czy ślady CC1 i CC2 muszą mieć sygnały 90-omowe?

A: Na płytkach drukowanych USB linie danych USB (D+ i D-) są prowadzone jako 90-omowe
sygnały różnicowe, ślady CC1 i CC2 mogą podążać za tym samym sygnałem
wymagania.

„`

TN1592
Uwaga techniczna
FAQ STM32 USB Type-C® Power Delivery
Wstęp
W tym dokumencie znajduje się lista najczęściej zadawanych pytań (FAQ) na temat interfejsu STM32 USB Type-C® i funkcji Power Delivery.

TN1592 – Rev 1 – czerwiec 2025 Aby uzyskać więcej informacji, skontaktuj się z lokalnym biurem sprzedaży STMicroelectronics.

www.st.com

TN1592
Dostarczanie zasilania przez USB typu C®

1

Dostarczanie zasilania przez USB typu C®

1.1

Czy można używać złącza USB Type-C® PD do przesyłania danych? (Nie używaj złącza USB o dużej prędkości)

funkcje przesyłania danych)

Mimo że samo złącze USB Type-C® PD nie jest przeznaczone do szybkiego przesyłu danych, można je stosować z innymi protokołami i trybami alternatywnymi, a także zarządzać podstawową transmisją danych.

1.2

Jakie jest praktyczne zastosowanie modułu VDM UCPD?

Komunikaty definiowane przez dostawców (VDM) w technologii USB Type-C® Power Delivery zapewniają elastyczny mechanizm rozszerzania funkcjonalności USB Type-C® PD poza standardowe negocjacje zasilania. VDM umożliwiają identyfikację urządzeń, obsługę trybów alternatywnych, aktualizacje oprogramowania sprzętowego, niestandardowe polecenia i debugowanie. Wdrażając VDM, dostawcy mogą tworzyć zastrzeżone funkcje i protokoły, zachowując jednocześnie zgodność ze specyfikacją USB Type-C® PD.

1.3

STM32CubeMX należy skonfigurować przy użyciu określonych parametrów, gdzie

są dostępne?

Najnowsza aktualizacja zmieniła wyświetlane informacje, aby były bardziej przyjazne dla użytkownika. Teraz interfejs po prostu prosi o podanie głośności.tage i żądany prąd. Parametry te można jednak znaleźć w dokumentacji, a tabela szybkiego odniesienia znajduje się w AN5418.

Rysunek 1. Szczegóły specyfikacji (tabela 6-14 w specyfikacji zasilania uniwersalnej magistrali szeregowej)

Rysunek 2 wyjaśnia zastosowaną wartość 0x02019096.
TN1592 – Wersja 1

strona 2/14

Rysunek 2. Szczegółowe dekodowanie PDO

TN1592
Dostarczanie zasilania przez USB typu C®

Więcej szczegółów na temat definicji PDO można znaleźć w sekcji POWER_IF w dokumencie UM2552.

1.4

Jaki jest maksymalny prąd wyjściowy interfejsu USB?

Maksymalny prąd wyjściowy dozwolony przez standard USB Type-C® PD wynosi 5 A przy użyciu specjalnego kabla 5 A. Bez specjalnego kabla maksymalny prąd wyjściowy wynosi 3 A.

1.5

Czy ten „tryb podwójnej roli” oznacza możliwość dostarczania energii i ładowania w

odwracać?

Tak, DRP (port o podwójnej roli) może być zasilany (odbiornik) lub zasilany (źródło). Jest powszechnie stosowany w urządzeniach zasilanych bateryjnie.

TN1592 – Wersja 1

strona 3/14

TN1592
Kontroler i zabezpieczenie zasilania STM32

2

Kontroler i zabezpieczenie zasilania STM32

2.1

Czy MCU obsługuje tylko standard PD czy także QC?

Mikrokontrolery STM32 obsługują przede wszystkim standard USB Power Delivery (PD), który jest elastycznym i powszechnie stosowanym protokołem zasilania przez złącza USB Type-C®. Mikrokontrolery STM32 ani stos USB PD firmy STMicroelectronics nie zapewniają natywnej obsługi funkcji szybkiego ładowania (QC). Jeśli wymagana jest obsługa szybkiego ładowania, należy zastosować dedykowany układ scalony kontrolera QC z mikrokontrolerem STM32.

2.2

Czy możliwe jest wdrożenie algorytmu prostowania synchronicznego w

pakiet? Czy może zarządzać wieloma wyjściami i rolami kontrolera?

Implementacja algorytmu prostowania synchronicznego z wieloma wyjściami i rolą kontrolera jest możliwa dzięki mikrokontrolerom STM32. Konfigurując układy peryferyjne PWM i ADC oraz opracowując algorytm sterowania, można osiągnąć efektywną konwersję mocy i zarządzać wieloma wyjściami. Dodatkowo, wykorzystując protokoły komunikacyjne, takie jak I2C lub SPI, można koordynować działanie wielu urządzeń w konfiguracji kontroler-cel. Jak np.ampnp. STEVAL-2STPD01 z pojedynczym modułem STM32G071RBT6, w którym umieszczono dwa kontrolery UCPD, może zarządzać dwoma portami zasilania typu C o mocy 60 W.

2.3

Czy istnieją protokoły TCPP dla VBUS > 20 V? Czy te produkty mają zastosowanie do EPR?

Seria TCPP0 jest przeznaczona do napięcia VBUS do 20 Vtage SPR (Standardowy zakres mocy).

2.4

Która seria mikrokontrolerów STM32 obsługuje USB Type-C® PD?

Urządzenie peryferyjne UCPD do zarządzania USB Type-C® PD jest wbudowane w następujące serie STM32: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6 i STM32MP2. W momencie pisania dokumentu podaje ono 961 P/N.

2.5

Jak sprawić, aby mikrokontroler STM32 działał jako urządzenie szeregowe USB zgodnie z USB CDC

klasa? Czy ta sama lub podobna procedura pomoże mi przejść na wersję bez kodu?

Rozwiązanie komunikacji przez USB jest obsługiwane przez prawdziwychampnarzędzi do odkrywania i oceny, w tym kompleksowych bibliotek wolnego oprogramowania iampPliki dostępne w pakiecie MCU. Generator kodu jest niedostępny.

2.6

Czy możliwe jest dynamiczne zmienianie „danych” PD w czasie wykonywania oprogramowania? Np.

tomtagi obecnych potrzeb/możliwości, konsumentów/dostawców itp.?

Dzięki USB Type-C® PD możliwa jest dynamiczna zmiana roli zasilania (odbiorca – SINK lub dostawca – SOURCE), zapotrzebowania na energię (obiekt danych zasilania) oraz roli danych (host lub urządzenie). Tę elastyczność zilustrowano na filmie prezentującym STM32H7RS USB Dual Role Data and Power.

2.7

Czy możliwe jest wykorzystanie standardu USB 2.0 i Power Delivery (PD) do

otrzymuje więcej niż 500 mA?

USB Type-C® PD umożliwia szybkie ładowanie urządzeń USB niezależnie od transmisji danych i zapewnia wysoką moc. Dzięki temu możliwe jest pobieranie prądu o natężeniu ponad 500 mA podczas transmisji w standardach USB 2.x i 3.x.

2.8

Czy mamy możliwość odczytania informacji o urządzeniu źródłowym lub odbiorczym?

takie jak PID/UID urządzenia USB?

USB PD obsługuje wymianę różnych typów wiadomości, w tym wiadomości rozszerzonych, które mogą zawierać szczegółowe informacje o producencie. Interfejs API USBPD_PE_SendExtendedMessage został zaprojektowany w celu ułatwienia tej komunikacji, umożliwiając urządzeniom żądanie i odbieranie danych, takich jak nazwa producenta, nazwa produktu, numer seryjny, wersja oprogramowania sprzętowego i inne niestandardowe informacje zdefiniowane przez producenta.

TN1592 – Wersja 1

strona 4/14

2.9 2.10 2.11 2.12 2.13
2.14
2.15 2.16 2.17

TN1592
Kontroler i zabezpieczenie zasilania STM32
Czy w przypadku stosowania osłony X-NUCLEO-SNK1M1 zawierającej TCPP01-M12 należy również użyć X-CUBE-TCPP? Czy w tym przypadku X-CUBE-TCPP jest opcjonalny?
Aby uruchomić rozwiązanie USB Type-C® PD w trybie SINK, zaleca się użycie X-CUBE-TCPP, co ułatwi implementację, ponieważ rozwiązanie STM32 USB Type-C® PD wymaga zarządzania. TCPP01-M12 zapewnia optymalną ochronę.
Na płytkach PCB USB linie danych USB (D+ i D-) są prowadzone jako sygnały różnicowe 90 omów. Czy ścieżki CC1 i CC2 również muszą być sygnałami 90 omów?
Linie CC to linie jednostronne z komunikacją o niskiej częstotliwości 300 kb/s. Impedancja charakterystyczna nie ma znaczenia.
Czy TCPP może chronić D+, D-?
TCPP nie jest przystosowany do ochrony linii D+/-. Do ochrony linii D+/- zaleca się stosowanie zabezpieczeń ESD USBLC6-2 lub zabezpieczeń ESD ECMF2-40A100N6 z filtrem składowej wspólnej, jeśli w systemie występują częstotliwości radiowe.
Czy sterownik jest w formacie HAL lub rejestrowym?
Sterownikiem jest HAL.
Jak mogę mieć pewność, że STM32 poprawnie obsługuje negocjacje mocy i zarządzanie prądem w protokole PD bez konieczności pisania kodu?
Pierwszym krokiem może być seria testów interoperacyjności w terenie z wykorzystaniem dostępnych na rynku urządzeń. Aby zrozumieć działanie rozwiązania, STM32CubeMonUCPD umożliwia monitorowanie i konfigurację aplikacji STM32 USB Type-C® i Power Delivery. Drugim krokiem może być certyfikacja w ramach programu zgodności USB-IF (USB Implementer Forum) w celu uzyskania oficjalnego numeru TID (Test Identification). Certyfikacja może zostać przeprowadzona w warsztatach zgodności sponsorowanych przez USB-IF lub w autoryzowanym, niezależnym laboratorium testowym. Kod wygenerowany przez X-CUBE-TCPP jest gotowy do certyfikacji, a rozwiązania w systemie Nucleo/Discovery/Evaluation zostały już certyfikowane.
Jak wdrożyć funkcję OVP ochrony portu typu C? Czy margines błędu można ustawić w granicach 8%?
Próg OVP jest ustalany przez objętośćtagMostek dzielnika połączony z komparatorem o stałej wartości przerwy energetycznej. Wejście komparatora to VBUS_CTRL na TCPP01-M12 i Vsense na TCPP03-M20. Objętość progu VBUS OVPtagmożna zmienić sprzętowo w zależności od objętościtagWspółczynnik podziału. Zaleca się jednak stosowanie współczynnika podziału podanego na X-NUCLEO-SNK1M1 lub X-NUCLEO-DRP1M1 zgodnie z docelową maksymalną objętościątage.
Czy stopień otwartości jest wysoki? Czy można dostosować niektóre konkretne zadania?
Stos USB Type-C® PD nie jest otwarty. Można jednak dostosować wszystkie jego wejścia i interakcję z rozwiązaniem. Można również zapoznać się z instrukcją obsługi STM32, aby zapoznać się z interfejsem UCPD.
Na co należy zwrócić uwagę przy projektowaniu obwodu zabezpieczającego port?
Układ scalony TCPP musi być umieszczony blisko złącza typu C. Zalecenia dotyczące schematów znajdują się w instrukcjach obsługi X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1 i X-NUCLEO-DRP1M1. Aby zapewnić odpowiednią odporność na wyładowania elektrostatyczne, zalecam zapoznanie się z notą aplikacyjną dotyczącą wskazówek dotyczących układu ESD.
W dzisiejszych czasach wprowadza się wiele jednoprocesorowych układów scalonych z Chin. Jakie są konkretne zalety?tagJakie są korzyści z używania STM32?
Kluczowe korzyści tego rozwiązania pojawiają się po dodaniu złącza PD typu C do istniejącego rozwiązania STM32. Jest to wówczas opłacalne ze względu na niską objętośćtagKontroler UCPD jest wbudowany w STM32 i charakteryzuje się dużą głośnościątagKontrola i ochrona odbywa się za pomocą protokołu TCP.

TN1592 – Wersja 1

strona 5/14

2.18 2.19 2.20

TN1592
Kontroler i zabezpieczenie zasilania STM32
Czy ST oferuje jakieś zalecane rozwiązanie obejmujące zasilacz i moduł STM32-UCPD?
Są pełnymi byłymiampz dwuportowym adapterem USB Type-C Power Delivery opartym na programowalnym przetworniku buck STPD01. STM32G071RBT6 i dwa TCPP02-M18 służą do obsługi dwóch programowalnych przetworników buck STPD01PUR.
Jakie jest odpowiednie rozwiązanie dla odbiornika (monitora klasy 60 W), wejścia HDMI lub DP i zasilania?
STM32-UCPD + TCPP01-M12 może obsługiwać moc pobieraną do 60 W. W przypadku HDMI lub DP wymagany jest tryb alternatywny, który można skonfigurować programowo.
Czy te produkty oznaczają, że zostały przetestowane pod kątem zgodności ze standardami USB-IF i USB?
Kod wygenerowany lub zaproponowany w pakiecie oprogramowania sprzętowego został przetestowany i oficjalnie certyfikowany dla niektórych kluczowych konfiguracji sprzętowych. Jak np.ample, X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1 i X-NUCLEO-DRP1M1 na płycie NUCLEO uzyskały oficjalny certyfikat, a identyfikatory testu USB-IF to: TID5205, TID6408 i TID7884.

TN1592 – Wersja 1

strona 6/14

TN1592
Konfiguracja i kod aplikacji

3

Konfiguracja i kod aplikacji

3.1

Jak mogę utworzyć PDO?

Budowanie obiektu danych o zasilaniu (PDO) w kontekście USB Power Delivery (PD) wymaga zdefiniowania możliwości zasilania źródła lub odbiornika USB PD. Oto kroki tworzenia i konfigurowania obiektu PDO:
1. Określ rodzaj PDO:

Stała podaż PDO: Definiuje stałą objętośćtage i prąd Zasilanie bateryjne PDO: Definiuje zakres objętościtages i moc maksymalna Zmienne zasilanie PDO: Definiuje zakres objętościtagi maksymalny prąd programowalnego zasilacza (PPS) APDO: umożliwia programowalną objętośćtage i prąd. 2. Zdefiniuj parametry:

Tomtage: tomtagpoziom, który PDO zapewnia lub żąda
Prąd/moc: Prąd (dla stałych i zmiennych PDO) lub moc (dla PDO zasilanych bateryjnie) dostarczana lub żądana przez PDO.
3. Użyj interfejsu graficznego STM32CubeMonUCPD:

Krok 1: Upewnij się, że masz najnowszą wersję aplikacji STM32CubeMonUCPD Krok 2: Podłącz płytkę STM32G071-Disco do komputera hosta i uruchom ją
Aplikacja STM32CubeMonitor-UCPD Krok 3: Wybierz swoją płytkę w aplikacji Krok 4: Przejdź do strony „konfiguracja portu” i kliknij kartę „możliwości odbiornika”, aby zobaczyć
bieżąca lista PDO Krok 5: Zmodyfikuj istniejącą listę PDO lub dodaj nową, postępując zgodnie z instrukcjami Krok 6: Kliknij ikonę „Wyślij do celu”, aby wysłać zaktualizowaną listę PDO na swoją tablicę Krok 7: Kliknij ikonę „Zapisz wszystko w celu”, aby zapisać zaktualizowaną listę PDO na swojej tablicy [*]. Oto przykładampprzykład, jak można zdefiniować PDO o stałej podaży w kodzie:

/* Zdefiniuj PDO o stałej podaży */ uint32_t fixed_pdo = 0; fixed_pdo |= (voltage_in_50mv_units << 10); // Objętośćtage w jednostkach 50 mV fixed_pdo |= (max_current_in_10ma_units << 0); // Maksymalny prąd w jednostkach 10 mA fixed_pdo |= (1 << 31); // stały typ zasilania

Exampkonfiguracja plików
W przypadku zasilania stałego PDO o napięciu 5 V i napięciu 3 A:
content_copy uint32_t fixed_pdo = 0; fixed_pdo |= (100 << 10); // 5 V (100 * 50 mV) fixed_pdo |= (30 << 0); // 3 A (30 * 10 mA) fixed_pdo |= (1 << 31); // stały typ zasilania

Dodatkowe uwagi:

·

Dynamiczny wybór PDO: Możesz dynamicznie zmienić metodę wyboru PDO w czasie wykonywania, modyfikując

zmienna USED_PDO_SEL_METHOD w pliku usbpd_user_services.c file[*].

·

Ocena możliwości: Użyj funkcji takich jak USBPD_DPM_SNK_EvaluateCapabilities, aby ocenić

otrzymane możliwości i przygotuj wiadomość żądania[*].

Tworzenie PDO obejmuje zdefiniowanie wolumenutage i parametry prądu (lub mocy) oraz konfigurowanie ich za pomocą narzędzi takich jak STM32CubeMonUCPD lub bezpośrednio w kodzie. Postępując zgodnie z instrukcjami i przykładamiampDzięki udostępnionym funkcjom możesz skutecznie tworzyć i zarządzać PDO dla swoich aplikacji USB PD.

3.2

Czy istnieje funkcja schematu priorytetyzacji z więcej niż jednym odbiornikiem PD?

połączony?

Tak, istnieje funkcja, która obsługuje schemat priorytetyzacji w przypadku podłączenia więcej niż jednego odbiornika PD. Jest to szczególnie przydatne w scenariuszach, w których wiele urządzeń jest podłączonych do jednego źródła zasilania. Dystrybucja zasilania musi być zarządzana w oparciu o priorytety.

TN1592 – Wersja 1

strona 7/14

TN1592
Konfiguracja i kod aplikacji

Schematem priorytetyzacji można zarządzać za pomocą funkcji USBPD_DPM_SNK_EvaluateCapabilities. Funkcja ta ocenia otrzymane możliwości ze źródła PD i przygotowuje komunikat żądania na podstawie wymagań i priorytetów odbiornika. W przypadku wielu odbiorników, można zaimplementować schemat priorytetyzacji, przypisując poziomy priorytetów każdemu odbiornikowi i modyfikując funkcję USBPD_DPM_SNK_EvaluateCapabilities, aby uwzględnić te priorytety.
content_copy uint32_t fixed_pdo = 0; fixed_pdo |= (100 << 10); // 5V (100 * 50mV) fixed_pdo |= (30 << 0); // 3A (30 * 10mA) fixed_pdo |= (1 << 31); // Stały typ zasilania
/* Zdefiniuj PDO o stałej podaży */ uint32_t fixed_pdo = 0; fixed_pdo |= (voltage_in_50mv_units << 10); // Objętośćtage w jednostkach 50mV fixed_pdo |= (max_current_in_10ma_units << 0); // Maksymalny prąd w jednostkach 10mA fixed_pdo |= (1 << 31); // Stały typ zasilania

3.3

Czy używanie DMA z LPUART jest obowiązkowe dla GUI?

Tak, komunikacja za pomocą rozwiązania ST-LINK jest obowiązkowa.

3.4

Czy ustawienie LPUART na 7 bitów dla długości słowa jest prawidłowe?

Tak, to prawda.

3.5

W narzędziu STM32CubeMX znajduje się pole wyboru „oszczędzaj energię nieaktywnych

UCPD – dezaktywacja funkcji podciągania rozładowanego akumulatora.” Co oznacza to pole wyboru, jeśli jest

włączać?

W trybie SOURCE, USB Type-C® wymaga rezystora podciągającego podłączonego do napięcia 3.3 V lub 5.0 V. Działa on jako generator źródła prądowego. To źródło prądowe można wyłączyć, gdy USB Type-C® PD nie jest używane, aby zmniejszyć zużycie energii.

3.6

Czy konieczne jest używanie FreeRTOS w aplikacjach STM32G0 i USB PD?

plany dla urządzeń USB PD innych niż FreeRTOSamples?

Korzystanie z FreeRTOS w aplikacjach USB Power Delivery (USB PD) na mikrokontrolerze STM32G0 nie jest obowiązkowe. USB PD można zaimplementować bez systemu RTOS, obsługując zdarzenia i maszyny stanowe w pętli głównej lub poprzez przerwanie procedur serwisowych. Chociaż pojawiły się prośby o USB Power Delivery, np.amples bez RTOS. Obecnie nie ma ex-RTOSample jest dostępny. Ale niektóre AzureRTOS exampsą dostępne dla serii STM32U5 i H5.

3.7

W demonstracji STM32CubeMX dotyczącej tworzenia aplikacji USB PD dla STM32G0, HSI

Czy dokładność jest akceptowalna dla aplikacji USB PD? Czy można użyć zewnętrznego HSE?

kryształ jest obowiązkowy?

HSI zapewnia zegar jądra dla peryferiów UCPD, więc nie ma korzyści z korzystania z HSE. Ponadto, STM32G0 obsługuje USB 2.0 bez użycia kryształu w trybie urządzenia, więc HSE byłby wymagany tylko w trybie hosta USB 2.0.

TN1592 – Wersja 1

strona 8/14

TN1592
Konfiguracja i kod aplikacji
Rysunek 3. Resetowanie UCPD i zegary

3.8 3.9 3.10

Czy istnieje jakaś dokumentacja, do której mogę się odwołać, aby skonfigurować CubeMX w sposób, który opisałeś później?
Dokumentacja jest dostępna pod poniższym linkiem Wiki.
Czy STM32CubeMonitor umożliwia monitorowanie w czasie rzeczywistym? Czy monitorowanie w czasie rzeczywistym jest możliwe poprzez połączenie STM32 i ST-LINK?
Tak, STM32CubeMonitor może wykonywać rzeczywisty monitoring poprzez połączenie STM32 i ST-LINK.
Czy VBUS jest wolumenem?tagCzy funkcja pomiaru prądu jest prezentowana na ekranie monitora i jest dostępna domyślnie w wersjach podstawowych na płytach obsługujących UCPD, czy też jest to funkcja dodanej płyty NUCLEO?
Dokładna objętośćtagPomiar jest dostępny natywnie, ponieważ objętość VBUStage jest wymagane przez USB Type-C®. Dokładny pomiar prądu można wykonać za pomocą TCPP02-M18 / TCPP03-M20 dzięki wysokiemu pozycjom. amprezystor bocznikowy i rezystor odcinający służą również do zabezpieczenia nadprądowego.

TN1592 – Wersja 1

strona 9/14

TN1592
Generator kodu aplikacji

4

Generator kodu aplikacji

4.1

Czy CubeMX może wygenerować projekt oparty na AzureRTOS z X-CUBE-TCPP za pomocą

Podobnie jest z FreeRTOSTM? Czy może wygenerować kod zarządzający USB PD?

bez użycia FreeRTOSTM? Czy ten pakiet oprogramowania wymaga systemu RTOS?

obsługiwać?

STM32CubeMX generuje kod dzięki pakietowi X-CUBE-TCPP, wykorzystując system operacyjny czasu rzeczywistego (RTOS) dostępny dla mikrokontrolera FreeRTOSTM (np. dla STM32G0)ample) lub AzureRTOS (dla STM32H5 jako np.ample).

4.2

Czy X-CUBE-TCPP może generować kod dla podwójnego portu PD typu C, takiego jak

Płyta STSW-2STPD01?

X-CUBE-TCPP może generować kod tylko dla jednego portu. Aby to zrobić dla dwóch portów, należy wygenerować dwa oddzielne projekty bez nakładania się na zasoby STM32 i z dwoma adresami I2C dla TCPP02-M18, a następnie je połączyć. Na szczęście STSW-2STPD01 posiada kompletny pakiet oprogramowania układowego dla obu portów. W takim przypadku generowanie kodu nie jest konieczne.

4.3

Czy to narzędzie projektowe współpracuje ze wszystkimi mikrokontrolerami z USB Type-C®?

Tak, X-CUBE-TCPP współpracuje z dowolnym modułem STM32 z wbudowaną funkcją UCPD dla wszystkich typów zasilania (SINK / SOURCE / Dual Role). Współpracuje z dowolnym modułem STM32 dla 5 V typu C SOURCE.

TN1592 – Wersja 1

strona 10/14

Historia rewizji
Data 20 czerwca 2025 r.

Tabela 1. Historia zmian dokumentu

Wersja 1

Pierwsze wydanie.

Zmiany

TN1592

TN1592 – Wersja 1

strona 11/14

TN1592
Zawartość
Zawartość
1 USB Type-C® Power Delivery . ... . . . . . . . . . . . . 2
1.2 Jakie jest praktyczne zastosowanie modułu VDM UCPD? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 STM32CubeMX wymaga konfiguracji z określonymi parametrami, gdzie one są?
dostępne? . ...
1.4 Jaki jest maksymalny prąd wyjściowy interfejsu USB? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.5 Czy ten „tryb podwójnej roli” oznacza możliwość dostarczania zasilania i ładowania wstecznego? . . . . . . . . . 3 2 Kontroler i zabezpieczenie zasilania STM32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1 Czy MCU obsługuje tylko standard PD, czy także QC? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2 Czy w pakiecie można zaimplementować algorytm prostowania synchronicznego? Czy
czy zarządza wieloma wyjściami i rolami kontrolerów? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3 Czy istnieją protokoły TCPP dla VBUS > 20 V? Czy te produkty mają zastosowanie do EPR? . . . . . . . . . . . . . . . . . . . . . 4
2.4 Która seria mikrokontrolerów STM32 obsługuje USB Type-C® PD? . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.5 Jak sprawić, aby mikrokontroler STM32 działał jako urządzenie szeregowe USB zgodnie z USB CDC
klasa? Czy ta sama lub podobna procedura pomoże mi przejść na tryb bez kodu? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.6 Czy możliwe jest dynamiczne zmienianie „danych” PD w czasie wykonywania oprogramowania? Np. objętośćtagi aktualne zapotrzebowanie/możliwości, konsument/dostawca itp.? . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.7 Czy można wykorzystać standard USB 2.0 i funkcję Power Delivery (PD) do odbioru prądu o natężeniu większym niż 500 mA? . ...
2.8 Czy mamy możliwość odczytania informacji o urządzeniu źródłowym lub odbiorczym, takich jak PID/UID urządzenia USB? . ...
2.9 Czy w przypadku stosowania osłony X-NUCLEO-SNK1M1 z modułem TCPP01-M12 należy również użyć modułu X-CUBE-TCPP? Czy w tym przypadku moduł X-CUBE-TCPP jest opcjonalny? . . . . . . . . . . . . . . . 5
2.10 Na płytkach PCB USB linie danych USB (D+ i D-) są prowadzone jako sygnały różnicowe 90 omów. Czy ścieżki CC1 i CC2 również muszą być sygnałami 90 omów? . . . . . . . . . . . . . . . . . . . . 5
2.11 Czy TCPP może chronić D+, D-? . ... 5 2.12 Jak mogę zapewnić, że STM5 obsługuje negocjacje mocy i zarządzanie prądem w
poprawnie zastosować protokół PD bez pisania kodu?. ...
2.14 Jak wdrożyć funkcję OVP ochrony portu typu C? Czy margines błędu można ustawić w granicach 8%? . ...
2.15 Czy stopień otwartości jest wysoki? Czy można dostosować niektóre z konkretnych zadań? . . . . . . . . . . . . . . . . . . . . 5 2.16 Na co należy zwrócić uwagę przy projektowaniu obwodu ochrony portu?. . . . . . . . . . . . . . . . . . . . 5 2.17 Obecnie wprowadza się wiele jednoprocesorowych układów scalonych z Chin. Jakie są
konkretny zaawanstagJakie są korzyści z używania STM32? . ...
2.18 Czy ST oferuje jakieś zalecane rozwiązanie z zasilaczem i modułem STM32-UCPD? . . 6

TN1592 – Wersja 1

strona 12/14

TN1592
Zawartość
2.19 Jakie jest odpowiednie rozwiązanie dla odbiornika (monitora klasy 60 W), wejścia HDMI lub DP i zasilania? . ...
2.20 Czy te produkty oznaczają, że zostały przetestowane pod kątem standardowych specyfikacji USB-IF i zgodności z USB? . ...
3 Konfiguracja i kod aplikacji . ...
3.1 Jak mogę utworzyć PDO? . ...
3.2 Czy istnieje funkcja schematu priorytetyzacji z podłączonymi więcej niż jednym odbiornikiem PD? . . . . . . 7
3.3 Czy używanie DMA z LPUART jest obowiązkowe dla GUI? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.4 Czy ustawienie LPUART na 7 bitów dla długości słowa jest prawidłowe? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.5 W narzędziu STM32CubeMX znajduje się pole wyboru „oszczędzaj energię nieaktywnego UCPD, dezaktywuj podciąganie rozładowanej baterii”. Co oznacza to pole wyboru, jeśli jest zaznaczone? . . . . . . . . . . . . 8
3.6 Czy konieczne jest używanie FreeRTOS do aplikacji STM32G0 i USB PD? Czy są jakieś plany dla aplikacji USB PD innych niż FreeRTOS?ample? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.7 Czy w wersji demonstracyjnej STM32CubeMX służącej do tworzenia aplikacji USB PD dla STM32G0, dokładność HSI jest akceptowalna dla aplikacji USB PD? Czy użycie zewnętrznego kryształu HSE jest obowiązkowe? . ...
3.8 Czy istnieje jakaś dokumentacja, do której mogę się odwołać, aby skonfigurować CubeMX w sposób, który wyjaśniłeś później? . ...
3.9 Czy monitor STM32CubeMonitor umożliwia monitorowanie w czasie rzeczywistym? Czy monitorowanie w czasie rzeczywistym jest możliwe poprzez połączenie STM32 i ST-LINK? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.10 Czy VBUS ma objętośćtagFunkcja pomiaru prądu/prądu prezentowana na ekranie monitora jest dostępna domyślnie i w podstawowej wersji na płytkach obsługujących UCPD, czy też jest to funkcja dodanej płytki NUCLEO?. ...
4 Generator kodu aplikacji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
4.1 Czy CubeMX może wygenerować projekt oparty na AzureRTOS z X-CUBE-TCPP w ten sam sposób, co FreeRTOSTM? Czy może wygenerować kod zarządzający USB PD bez użycia FreeRTOSTM? Czy ten pakiet oprogramowania wymaga systemu RTOS do działania?. . . . . . 10
4.2 Czy X-CUBE-TCPP może wygenerować kod dla podwójnego portu PD typu C, takiego jak płyta STSW-2STPD01? . ...
4.3 Czy to narzędzie projektowe współpracuje ze wszystkimi mikrokontrolerami z USB Type-C®? . . . . . . . . . . . . . . . . . 10
Historia rewizji . ...

TN1592 – Wersja 1

strona 13/14

TN1592
WAŻNA INFORMACJA PRZECZYTAJ UWAŻNIE STMicroelectronics NV i jej spółki zależne („ST”) zastrzegają sobie prawo do wprowadzania zmian, poprawek, ulepszeń, modyfikacji i ulepszeń produktów ST i/lub niniejszego dokumentu w dowolnym czasie bez powiadomienia. Nabywcy powinni przed złożeniem zamówienia uzyskać najnowsze istotne informacje o produktach ST. Produkty ST są sprzedawane zgodnie z warunkami sprzedaży ST obowiązującymi w momencie potwierdzenia zamówienia. Nabywcy ponoszą wyłączną odpowiedzialność za wybór, wybór i użytkowanie produktów ST, a ST nie ponosi odpowiedzialności za pomoc w stosowaniu lub projektowanie produktów nabywców. W niniejszym dokumencie ST nie udziela żadnej licencji, wyraźnej ani dorozumianej, do jakichkolwiek praw własności intelektualnej. Odsprzedaż produktów ST z postanowieniami odmiennymi od informacji zawartych w niniejszym dokumencie powoduje unieważnienie gwarancji udzielonej przez ST na taki produkt. ST i logo ST są znakami towarowymi ST. Dodatkowe informacje na temat znaków towarowych ST można znaleźć na stronie www.st.com/trademarks. Wszystkie inne nazwy produktów lub usług są własnością ich odpowiednich właścicieli. Informacje zawarte w tym dokumencie zastępują informacje podane wcześniej we wszystkich wcześniejszych wersjach tego dokumentu.
© 2025 STMicroelectronics Wszelkie prawa zastrzeżone

TN1592 – Wersja 1

strona 14/14

Dokumenty / Zasoby

Zasilanie ST STM32 USB typu C [plik PDF] Instrukcja obsługi
TN1592, UM2552, STEVAL-2STPD01, STM32, zasilanie przez USB typu C, STM32, zasilanie przez USB typu C, zasilanie przez USB typu C, zasilanie, zasilanie

Odniesienia

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *