STM32 USB Type-C napajanje

STM32 USB Type-C napajanje

Uvod

Ovaj dokument sadrži popis često postavljanih pitanja (FAQ) o STM32 USB Type-C® i tehnologiji napajanja.

Napajanje putem USB Type-C®-a

Can the USB Type-C® PD be used to transmit data? (Not using USB high-speed data transfer features)

Iako sam USB Type-C® PD nije dizajniran za brzi prijenos podataka, može se koristiti s drugim protokolima i alternativnim načinima rada te upravlja osnovnim prijenosom podataka.

Koja je praktična upotreba VDM UCPD modula?

Poruke definirane od strane dobavljača (VDM) u USB Type-C® Power Delivery pružaju fleksibilan mehanizam za proširenje funkcionalnosti USB Type-C® PD-a izvan standardnog pregovaranja o napajanju. VDM-ovi omogućuju identifikaciju uređaja, alternativne načine rada, ažuriranja firmvera, prilagođene naredbe i otklanjanje pogrešaka. Implementacijom VDM-ova, dobavljači mogu stvoriti vlasničke značajke i protokole uz održavanje kompatibilnosti sa specifikacijom USB Type-C® PD.

STM32CubeMX needs to be configured with specific parameters, where are they available?

Najnovije ažuriranje promijenilo je prikaz informacija kako bi bio jednostavniji za korištenje, sada sučelje jednostavno traži glasnoćutage i željena struja. Međutim, ovi se parametri mogu pronaći u dokumentaciji, a tablicu s brzim referencama možete vidjeti u AN5418.

Slika 1. Specification detail (table 6-14 in universal serial bus Power Delivery specification)
Napajanje putem USB Type-C®-a

Slika 2 explains the applied value 0x02019096.
Slika 2. Detaljno PDO dekodiranje
Napajanje putem USB Type-C®-a

Za više detalja o definiciji PDO-a, pogledajte odjeljak POWER_IF u UM2552.

Kolika je maksimalna izlazna struja USB sučelja?

Maksimalna izlazna struja koju dopušta USB Type-C® PD standard je 5 A s određenim kabelom od 5 A. Bez određenog kabela, maksimalna izlazna struja je 3 A.

Does this ‘Dual-role mode’ mean be able to supply power and charge in reverse?

Da, DRP (dvostruki port) može biti napajan (sink) ili može napajati (source). Obično se koristi na uređajima na baterije.

STM32 kontroler i zaštita napajanja

Podržava li MCU samo PD standard ili i QC?

STM32 mikrokontroleri prvenstveno podržavaju USB Power Delivery (PD) standard, koji je fleksibilan i široko prihvaćen protokol za napajanje putem USB Type-C® priključaka. STM32 mikrokontroleri ili USB PD stog tvrtke STMicroelectronics ne pružaju izvornu podršku za brzo punjenje (QC). Ako je potrebna podrška za brzo punjenje, s STM32 mikrokontrolerom treba koristiti namjenski QC kontroler IC.

Is it possible to implement a synchronous rectification algorithm in the package? Can it manage multiple outputs and controller roles?

Implementacija sinkronog algoritma ispravljanja s više izlaza i ulogom kontrolera izvediva je s STM32 mikrokontrolerima. Konfiguriranjem PWM i ADC perifernih uređaja i razvojem algoritma upravljanja moguće je postići učinkovitu pretvorbu snage i upravljati više izlaza. Osim toga, korištenje komunikacijskih protokola poput I2C ili SPI koordinira rad više uređaja u konfiguraciji kontrolera i cilja. Kao npr.amptj. STEVAL-2STPD01 s jednim STM32G071RBT6 koji ugrađuje dva UCPD kontrolera može upravljati s dva Type-C 60 W Type-C porta za napajanje.

Postoje li TCPP za VBUS > 20 V? Primjenjuju li se ovi proizvodi na EPR?

Serija TCPP0 je nazivno naponska do 20 V VBUS.tage SPR (Standardni raspon snage).

Koja serija STM32 mikrokontrolera podržava USB Type-C® PD?

UCPD periferni uređaj za upravljanje USB Type-C® PD ugrađen je u sljedeće STM32 serije: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6 i STM32MP2. Daje 961 P/N u trenutku pisanja dokumenta.

How to make the STM32 MCU works as a USB serial device following USB CDC class? Is the same or similar procedure help me go no-code?

Komunikaciju putem USB rješenja podržava Real Exampalata za otkrivanje ili evaluaciju, uključujući sveobuhvatne biblioteke besplatnog softvera iampdatoteke dostupne s MCU paketom. Generator koda nije dostupan.

Is it possible to dynamically change the PD ‘data’ in the software run-time? E.g. voltage and current demands/capabilities, consumer/provider etc.?

It is possible to dynamically change the power role (consumer – SINK or provider – SOURCE), the power demand (power data object) and data role (host or device) thanks USB Type-C® PD. This flexibility is illustrated in STM32H7RS USB Dual Role Data and Power video.

Is it possible to use the USB2.0 standard and the Power Delivery (PD) to receive more than 500 mA?

USB Type-C® PD omogućuje veliku snagu i brzo punjenje USB uređaja neovisno o prijenosu podataka. Dakle, moguće je primiti više od 500 mA tijekom prijenosa putem USB 2.x, 3.x.

Do we have the possibility to read information on the source or sink device such as the PID/UID of the USB device?

USB PD podržava razmjenu različitih vrsta poruka, uključujući proširene poruke koje mogu sadržavati detaljne informacije o proizvođaču. USBPD_PE_SendExtendedMessage API je dizajniran za olakšavanje ove komunikacije, omogućujući uređajima da zahtijevaju i primaju podatke kao što su naziv proizvođača, naziv proizvoda, serijski broj, verzija firmvera i druge prilagođene informacije koje je definirao proizvođač.

Kada se koristi X-NUCLEO-SNK1M1 štit koji uključuje TCPP01-M12, treba li se koristiti i X-CUBE-TCPP? Ili je X-CUBE-TCPP u ovom slučaju opcionalan?

Za pokretanje USB Type-C® PD rješenja u SINK načinu rada, preporučuje se X-CUBE-TCPP radi lakše implementacije jer je potrebno upravljati STM32 USB Type-C® PD rješenjem. TCPP01-M12 je pridružena optimalna zaštita.

Na USB tiskanim pločicama, USB podatkovne linije (D+ i D-) usmjeravaju se kao diferencijalni signali od 90 oma. Moraju li i CC1 i CC2 linije biti signali od 90 oma?

CC linije su jednostrane linije s niskofrekventnom komunikacijom od 300 kbps. Karakteristična impedancija nije kritična.

Može li TCPP zaštititi D+, D-?

TCPP is not adapted to protect D+/- lines. To protect D+/- lines USBLC6-2 ESD protections are recommended or ECMF2-40A100N6 ESD protections + common-mode filter if radio frequencies on the system.

Je li HAL ili registar upravljačkog programa enkapsuliran?

Vozač je HAL.

Kako mogu osigurati da STM32 ispravno obrađuje pregovore o napajanju i upravljanje strujom u PD protokolu bez pisanja koda?

A first step can be a series of field interoperability tests using available device available on the market. To understand the solution behavior, STM32CubeMonUCPD allows monitoring and configuration of STM32 USB Type-C® and Power Delivery applications.

A second step can be a certification with the USB-IF (USB implementer forum) compliance program to obtain an official TID (Test Identification) number. It can be performed in a USB-IF sponsored compliance workshop or in an authorized independent test lab.

The code generated by X-CUBE-TCPP is ready to be certified and solutions in the Nucleo/Discovery/Evaluation board have already been certified.

Kako implementirati OVP funkciju zaštite Type-C porta? Može li se margina pogreške postaviti unutar 8%?

Prag OVP-a postavlja se volumenomtage divider bridge connected on a comparator with a fixed bandgap value.
Comparator input is VBUS_CTRL on TCPP01-M12 and Vsense on TCPP03-M20. OVP VBUS threshold voltage se može HW mijenjati prema volumenutage divider ratio.
However, it is recommended to use the divider ratio presented on X-NUCLEO-SNK1M1 or X-NUCLEO-DRP1M1 according to the targeted maximum voltage.

Je li stupanj otvorenosti visok? Mogu li se prilagoditi neki od specifičnih zadataka?

USB Type-C® PD stog nije otvoren. Međutim, moguće je prilagoditi sve njegove ulaze i interakciju s rješenjem. Također, možete se pozvati na referentni priručnik za STM32 kako biste pogledali UCPD sučelje.

Na što trebamo obratiti pozornost pri projektiranju kruga zaštite porta?

TCPP IC must be placed close to the Type-C connector. Schematic recommendations are listed in user manuals of X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, i X-NUCLEO-DRP1M1. To insure a good ESD robustness, I would recommend having a look on ESD layout tips application note.

Ovih dana se uvodi mnogo jednočipnih integriranih krugova iz Kine. Koje su specifične prednosti?tagkorištenje STM32?

Ključne prednosti ovog rješenja pojavljuju se pri dodavanju PD konektora tipa C postojećem STM32 rješenju. Tada je isplativo zbog niskog naponatagUCPD kontroler je ugrađen u STM32 i ima visoku glasnoćutagKontrole/zaštitu provodi TCPP.

Postoji li preporučeno rješenje koje ST nudi s napajanjem i STM32-UCPD?

Oni su potpuni bivšiample s a USB Type-C Power Delivery dual port adapter based on the STPD01 programmable buck converter. STM32G071RBT6 and two TCPP02-M18 are used to support two STPD01PUR programmable buck regulators.

Koje je primjenjivo rješenje za Sink (monitor klase 60 W), primjenu HDMI ili DP ulaza i napajanja?

STM32-UCPD + TCPP01-M12 može podržati potrošnju energije do 60 W. Za HDMI ili DP potreban je alternativni način rada, a to se može učiniti softverski.

Znače li ovi proizvodi da su testirani na standardne specifikacije USB-IF i USB usklađenost?

Kod generiran ili predložen na paketu firmvera testiran je i službeno certificiran za neke ključne hardverske konfiguracije. Kao npr.ampX-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1 i X-NUCLEO-DRP1M1 na vrhu NUCLEO-a službeno su certificirani, a USB-IF ID-ovi testa su: TID5205, TID6408 i TID7884.

Konfiguracijski i aplikacijski kod

Kako mogu izgraditi PDO?

Izgradnja objekta podataka o napajanju (PDO) u kontekstu USB napajanja (PD) uključuje definiranje mogućnosti napajanja USB PD izvora ili odvoda. Evo koraka za stvaranje i konfiguriranje PDO-a:

  1. Identify the type of PDO:
    • Fixed supply PDO: Defines a fixed voltage i struja
    • Battery supply PDO: Defines a range of voltages and a maximum power
    • Variable supply PDO: Defines a range of voltages and a maximum current
    • Programmable Power Supply (PPS) APDO: Allows for a programmable voltage i struja.
  2. Definirajte parametre:
    • Voltage: Voltagrazina koju PDO pruža ili zahtijeva
    • Current / power: The current (for fixed and variable PDOs) or power (for battery PDOs) the PDO provide
      or request.
  3. Use the STM32 Cube MonUCPD GUI:
    • Korak 1: Ensure you have the latest version of the STM32 Cube Mon UCPD application
    • Korak 2: Connect your STM32G071-Disco board to your host machine and launch the STM32 Cube Monitor-UCPD application
    • Korak 3: Select your board in the application
    • Korak 4: Navigate to the “port configuration” page and click on the “sink capabilities” tab to see the
      current PDO list
    • Korak 5: Modify an existing PDO or add a new PDO by following the prompts
    • Korak 6: Click on the “send to target” icon to send the updated PDO list to your board
    • Korak 7: Click on the “save all in target” icon to save the updated PDO list onto your board[*].

Evo jednog bivšegampPrimjer kako biste mogli definirati PDO fiksne ponude u kodu:

/* Define a fixed supply PDO */
uint32_t fixed_pdo = 0;
fixed_pdo |= (voltage_in_50mv_units << 10); // Voltage in 50 mV units
fixed_pdo |= (max_current_in_10ma_units << 0); // Max current in 10 mA units
fixed_pdo |= (1 << 31); // fixed supply type

Example konfiguracija

Za PDO s fiksnim napajanjem od 5 V i 3 A:

content_copy
uint32_t fixed_pdo = 0;
fixed_pdo |= (100 << 10); // 5 V (100 * 50 mV)
fixed_pdo |= (30 << 0); // 3A (30 * 10 mA)
fixed_pdo |= (1 << 31); // fixed supply type

Dodatna razmatranja: 

  • Dynamic PDO selection: You can dynamically change the PDO selection method at runtime by modifying the USED_PDO_SEL_METHOD variable in the usbpd_user_services.c file[*] .
  • Evaluation of capabilities: Use functions like USBPD_DPM_SNK_EvaluateCapabilities to evaluate received capabilities and prepare the request message[*] .

Izgradnja PDO-a uključuje definiranje volumenatagparametre e i struje (ili snage) i njihovo konfiguriranje pomoću alata poput STM32CubeMonUCPD ili izravno u kodu. Slijedeći korake i primjerampPomoću pruženih datoteka možete učinkovito stvarati i upravljati PDO-ima za svoje USB PD aplikacije.

Is there a function for a prioritizing scheme with more than one PD-sink connected?

Da, postoji funkcija koja podržava shemu prioritizacije kada je spojeno više od jednog PD-sink-a. To je posebno korisno u scenarijima gdje je više uređaja spojeno na jedan izvor napajanja. Distribucija napajanja mora se upravljati na temelju prioriteta.

Shema određivanja prioriteta može se upravljati pomoću funkcije USBPD_DPM_SNK_EvaluateCapabilities. Ova funkcija procjenjuje primljene mogućnosti iz PD izvora i priprema poruku zahtjeva na temelju zahtjeva i prioriteta odvoda. Kada se radi s više odvoda, možete implementirati shemu određivanja prioriteta dodjeljivanjem razina prioriteta svakom odvodu i modificiranjem funkcije USBPD_DPM_SNK_EvaluateCapabilities kako bi se uzeli u obzir ti prioriteti.

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); // Fixed supply type

/* Define a Fixed Supply PDO */
uint32_t fixed_pdo = 0;
fixed_pdo |= (voltage_in_50mv_units << 10); // Voltage in 50mV units
fixed_pdo |= (max_current_in_10ma_units << 0); // Max current in 10mA units
fixed_pdo |= (1 << 31); // Fixed supply type

Je li obavezno koristiti DMA s LPUART-om za GUI?

Da, obavezna je komunikacija putem ST-LINK rješenja.

Je li LPUART postavka od 7 bita za duljinu riječi ispravna?

Da, točno je.

In the STM32CubeMX tool – there is a check box “save power of non-active UCPD – deactive dead battery pull-up.” What does mean this check box if it is enable?

Kada je SOURCE, USB Type-C® treba pull-up otpornik spojen na 3.3 V ili 5.0 V. Djeluje kao generator izvora struje. Ovaj izvor struje može se onemogućiti kada se USB Type-C® PD ne koristi kako bi se smanjila potrošnja energije.

Is it necessary to use FreeRTOS for STM32G0 and USB PD applications? Any plans for non-FreeRTOS USB PD examples?

Nije obavezno koristiti FreeRTOS za USB Power Delivery (USB PD) aplikacije na STM32G0 mikrokontroleru. USB PD možete implementirati bez RTOS-a rukovanjem događajima i strojevima stanja u glavnoj petlji ili prekidanjem servisnih rutina. Iako je bilo zahtjeva za USB Power Delivery npr.ampdatoteke bez RTOS-a. Trenutno nema datoteka koje nisu RTOSample je dostupan. Ali neki AzureRTOS exampDostupni su za serije STM32U5 i H5.

In the STM32CubeMX demo building a USB PD application for STM32G0, is HSI accuracy acceptable for USB PD applications? Or the use of external HSE crystal is mandatory?

HSI osigurava takt jezgre za UCPD periferni uređaj, tako da nema koristi od korištenja HSE-a. Također, STM32G0 podržava bezkristalnu konfiguraciju za USB 2.0 u načinu rada uređaja, tako da bi HSE bio potreban samo u načinu rada USB 2.0 hosta.

Slika 3. UCPD reset and clocks

UCPD reset and clocks

Postoji li ikakva dokumentacija na koju se mogu pozvati za postavljanje CubeMX-a kao što ste kasnije objasnili?

The documentation is available in the following Wiki link.

Is the STM 32 Cube Monitor capable of real-time monitoring? Is real-time monitoring possible by connecting STM32 and ST-LINK?

Da, STM32CubeMonitor može vršiti stvarni nadzor povezivanjem STM32 i ST-LINK-a.

Je li VBUS volumentagJe li funkcija mjerenja električne/struje prikazana na zaslonu monitora dostupna osnovno i zadano na pločama s omogućenim UCPD-om ili je to značajka dodane NUCLEO ploče?

Točan objtagMjerenje je izvorno dostupno jer VBUS voltage is required by USB Type-C®.
Accurate current measurement can be done by TCPP02-M18 / TCPP03-M20 thanks to high side ampOtpornik za zaštitu od preopterećenja i paralelni otpornik također se koriste za zaštitu od preopterećenja.

Generator koda aplikacije

Can CubeMX generate an Azure RTOS-based project with X-CUBE-TCPP by the same way with FreeRTOS™? Can it generate the code managing the USB PD without using FreeRTOS™? Does this software suite require an RTOS to operate?

STM32CubeMX generates code thanks to the X-CUBE-TCPP package using the RTOS available for the MCU, FreeRTOS™ (for STM32G0 as example) ili AzureRTOS (za STM32H5 kao npr.ample).

Can X-CUBE-TCPP generate code for dual Type-C PD port such as STSW-2STPD01 board?

X-CUBE-TCPP can generate code for only a single port. To do it for two ports, two separated projects have to be generated without overlap on STM32 resources and with two I2C addresses for TCPP02-M18 and be merged.
srećom, STSW-2STPD01 has a complete firmware package for the two ports. It is then not necessary to generate code.

Radi li ovaj alat za dizajn sa svim mikrokontrolerima s USB Type-C®?

Da, X-CUBE-TCPP radi s bilo kojim STM32 koji ima ugrađen UCPD za sva kućišta napajanja (SINK / SOURCE / Dual Role). Radi s bilo kojim STM32 za 5 V Type-C SOURCE.

Tablica 1. Povijest revizija dokumenta

Datum Revizija Promjene
20. lipnja 2025 1 Početno izdanje.

Important Notice – Read Carefully

STMicroelectronics NV i njegove podružnice ("ST") zadržavaju pravo izmjene, ispravke, poboljšanja, preinake i poboljšanja ST proizvoda i/ili ovog dokumenta u bilo koje vrijeme bez prethodne najave. Kupci bi trebali dobiti najnovije relevantne informacije o ST proizvodima prije narudžbe. Proizvodi ST-a prodaju se u skladu s odredbama i uvjetima prodaje ST-a koji su na snazi ​​u trenutku potvrde narudžbe.

Kupci su isključivo odgovorni za izbor, izbor i korištenje ST proizvoda i ST ne preuzima nikakvu odgovornost za pomoć pri primjeni ili dizajn proizvoda kupaca.

ST ovdje ne daje nikakvu licencu, izričitu ili implicitnu, za bilo koje pravo intelektualnog vlasništva.

Preprodaja ST proizvoda s odredbama različitim od ovdje navedenih informacija poništit će svako jamstvo koje je ST dao za takav proizvod.

ST i ST logotip su zaštitni znakovi ST. Za dodatne informacije o ST zaštitnim znakovima, pogledajte www.st.com/trademarks. Svi ostali nazivi proizvoda ili usluga vlasništvo su njihovih vlasnika.

Informacije u ovom dokumentu nadziru i zamjenjuju informacije prethodno navedene u bilo kojoj od prethodnih verzija ovog dokumenta.

© 2025 STMicroelectronics – Sva prava pridržana
Logo

Dokumenti / Resursi

ST STM32 USB Type-C napajanje [pdf] Korisnički priručnik
TN1592, UM2552, STEVAL-2STPD01, STM32 USB Type-C napajanje, STM32, USB Type-C napajanje, Type-C napajanje, napajanje, napajanje

Reference

Ostavite komentar

Vaša email adresa neće biti objavljena. Obavezna polja su označena *