STM32 USB Type-C toiteallikas

STM32 USB Type-C toiteallikas

Sissejuhatus

See dokument sisaldab STM32 USB Type-C® ja toiteallika kohta korduma kippuvate küsimuste (KKK) loendit.

USB Type-C® toiteallikas

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

Kuigi USB Type-C® PD ise ei ole mõeldud kiireks andmeedastuseks, saab seda kasutada koos teiste protokollide ja alternatiivsete režiimidega ning see haldab põhilist andmeedastust.

Milline on VDM UCPD mooduli praktiline kasutus?

USB Type-C® toiteallika tarnija määratletud sõnumid (VDM-id) pakuvad paindlikku mehhanismi USB Type-C® PD funktsionaalsuse laiendamiseks tavapärasest toiteläbirääkimistest kaugemale. VDM-id võimaldavad seadme tuvastamist, alternatiivseid režiime, püsivara värskendusi, kohandatud käske ja silumist. VDM-ide rakendamise abil saavad tootjad luua patenteeritud funktsioone ja protokolle, säilitades samal ajal ühilduvuse USB Type-C® PD spetsifikatsiooniga.

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

Viimane värskendus muutis kuvatavat teavet kasutajasõbralikumaks, nüüd küsib liides lihtsalt helitugevust.tage ja soovitud voolutugevus. Need parameetrid leiate aga dokumentatsioonist, näiteks AN5418 kiirjuhendi tabeli.

Joonis 1. Specification detail (table 6-14 in universal serial bus Power Delivery specification)
USB Type-C® toiteallikas

Joonis 2 explains the applied value 0x02019096.
Joonis 2. PDO detailne dekodeerimine
USB Type-C® toiteallikas

PDO definitsiooni kohta lisateabe saamiseks vaadake UM2552 POWER_IF jaotist.

Milline on USB-liidese maksimaalne väljundvool?

USB Type-C® PD standardi lubatud maksimaalne väljundvool on spetsiaalse 5 A kaabliga 5 A. Ilma spetsiaalse kaablita on maksimaalne väljundvool 3 A.

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

Jah, DRP-d (kahe rolliga porti) saab toita (neel) või varustada (allikas). Seda kasutatakse tavaliselt akutoitel seadmetes.

STM32 toiteallika kontroller ja kaitse

Kas mikrokontroller toetab ainult PD-standardit või ka QC-d?

STM32 mikrokontrollerid toetavad peamiselt USB Power Delivery (PD) standardit, mis on paindlik ja laialdaselt kasutatav protokoll toite edastamiseks USB Type-C® ühenduste kaudu. STM32 mikrokontrollerid ega STMicroelectronicsi USB PD pakk ei paku natiivset kiirlaadimise (QC) tuge. Kui kiirlaadimise tugi on vajalik, tuleks STM32 mikrokontrolleriga kasutada spetsiaalset kvaliteedikontrolli kontrolleri integraallülitust.

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

Sünkroonse alalduse algoritmi rakendamine mitme väljundi ja kontrolleri rolliga on teostatav STM32 mikrokontrolleritega. PWM-i ja ADC välisseadmete konfigureerimise ning juhtimisalgoritmi väljatöötamise abil on võimalik saavutada tõhus võimsuse muundamine ja hallata mitut väljundit. Lisaks koordineeritakse mitme seadme tööd kontrolleri-sihtmärgi konfiguratsioonis sideprotokollide, näiteks I2C või SPI abil. NäiteksampNäiteks STEVAL-2STPD01 koos ühe STM32G071RBT6-ga, mis sisaldab kahte UCPD-kontrollerit, suudab hallata kahte 60 W C-tüüpi C-tüüpi toiteporti.

Kas VBUS > 20 V jaoks on olemas TCPP? Kas need tooted kehtivad EPR-i kohta?

TCPP0 seeria VBUS pinge on kuni 20 V.tage SPR (standardne võimsusvahemik).

Milline STM32 mikrokontrollerite seeria toetab USB Type-C® PD-d?

USB Type-C® PD haldamiseks mõeldud UCPD välisseade on integreeritud järgmistesse STM32 seeriatesse: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6 ja STM32MP2. Dokumendi kirjutamise ajal annab see 961 P/N-i.

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?

USB-lahenduse kaudu toimuvat suhtlust toetavad päris eksemplaridampavastamis- või hindamisvahendite hulgast, sealhulgas ulatuslikest tasuta tarkvarateegidest ja näidetestampMCU paketiga on saadaval failid. Koodigeneraator pole saadaval.

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 võimaldab USB-seadmetel andmeedastusest sõltumatult suure võimsusega ja kiiret laadimist. Seega on USB 2.x ja 3.x kaudu edastades võimalik vastu võtta üle 500 mA.

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 toetab erinevat tüüpi sõnumite vahetamist, sealhulgas laiendatud sõnumite vahetamist, mis võivad sisaldada üksikasjalikku tootjateavet. USBPD_PE_SendExtendedMessage API on loodud selle suhtluse hõlbustamiseks, võimaldades seadmetel taotleda ja vastu võtta andmeid, nagu tootja nimi, toote nimi, seerianumber, püsivara versioon ja muu tootja määratletud kohandatud teave.

Kas TCPP01-M12-ga X-NUCLEO-SNK1M1 kilbi kasutamisel peaks kasutama ka X-CUBE-TCPP-d? Või on X-CUBE-TCPP sel juhul valikuline?

USB Type-C® PD lahenduse käivitamiseks SINK-režiimis on soovitatav X-CUBE-TCPP, et lihtsustada juurutamist, kuna STM32 USB Type-C® PD lahendust tuleb hallata. TCPP01-M12 on sellega seotud optimaalne kaitse.

USB-trükkplaatidel suunatakse USB-andmesideliinid (D+ ja D-) 90-oomiste diferentsiaalsignaalidena. Kas CC1 ja CC2 jäljed peavad samuti olema 90-oomised signaalid?

CC-liinid on ühe otsaga liinid, mis võimaldavad 300 kbps madalsageduslikku sidet. Iseloomulik impedants ei ole kriitilise tähtsusega.

Kas TCPP saab kaitsta D+ ja 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.

Kas draiveri HAL või register on kapseldatud?

Juht on HAL.

Kuidas ma saan ilma koodi kirjutamata tagada, et STM32 käsitleb PD-protokollis võimsusläbirääkimisi ja vooluhaldust õigesti?

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.

Kuidas rakendada C-tüüpi pordi kaitse OVP-funktsiooni? Kas veamarginaali saab seada 8% piiresse?

OVP lävi määratakse voltage 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 saab HW-d vastavalt mahule muutatage 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.

Kas avatuse aste on kõrge? Kas mõnda konkreetset ülesannet saab kohandada?

USB Type-C® PD-pinu pole avatud. Küll aga on võimalik kõiki selle sisendeid ja lahendusega suhtlemist kohandada. Samuti saate UCPD-liidese kohta lisateavet vaadata STM32 teatmikjuhendist.

Millele peaksime sadamakaitseahela kavandamisel tähelepanu pöörama?

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, ja X-NUCLEO-DRP1M1. To insure a good ESD robustness, I would recommend having a look on ESD layout tips application note.

Tänapäeval tuuakse turule palju Hiinast pärit ühekiibilisi integraallülitusi. Millised on nende konkreetsed eelised?tagMida STM32 kasutamisest arvata?

Selle lahenduse peamised eelised ilmnevad C-tüüpi PD-pistiku lisamisel olemasolevale STM32-lahendusele. See on kulutõhus tänu madalale mahule.tagUCPD kontroller on sisse ehitatud STM32-le ja suure mahutavusegatagKontrolli/kaitset teostab TCPP.

Kas ST pakub koos toiteploki ja STM32-UCPD-ga soovituslikku lahendust?

Nad on täielikud endisedample koos 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.

Milline on sobiv lahendus valamu (60 W klassi monitor) jaoks, rakenduse HDMI või DP sisend ja toide?

STM32-UCPD + TCPP01-M12 toetab kuni 60 W võimsust. HDMI või DP puhul on vaja alternatiivset režiimi ja seda saab teha tarkvara abil.

Kas need tooted tähendavad, et neid on testitud USB-IF ja USB-vastavuse standardspetsifikatsioonide osas?

Püsivarapaketil genereeritud või pakutud kood on testitud ja ametlikult sertifitseeritud mõnede oluliste riistvarakonfiguratsioonide jaoks. Nagu ntampNUCLEO peal olevad X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1 ja X-NUCLEO-DRP1M1 on ametlikult sertifitseeritud ning USB-IF testi ID-d on: TID5205, TID6408 ja TID7884.

Konfiguratsioon ja rakenduskood

Kuidas ma saan luua PDO-d?

Toiteandmete objekti (PDO) loomine USB toiteallika (PD) kontekstis hõlmab USB PD allika või neelaja toitevõimaluste määratlemist. PDO loomiseks ja konfigureerimiseks toimige järgmiselt.

  1. Identify the type of PDO:
    • Fixed supply PDO: Defines a fixed voltage ja praegune
    • 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 ja praegune.
  2. Määratlege parameetrid:
    • Voltage: Voltage tase, mida PDO pakub või taotleb
    • 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:
    • 1. samm: Ensure you have the latest version of the STM32 Cube Mon UCPD application
    • 2. samm: Connect your STM32G071-Disco board to your host machine and launch the STM32 Cube Monitor-UCPD application
    • 3. samm: Select your board in the application
    • 4. samm: Navigate to the “port configuration” page and click on the “sink capabilities” tab to see the
      current PDO list
    • 5. samm: Modify an existing PDO or add a new PDO by following the prompts
    • 6. samm: Click on the “send to target” icon to send the updated PDO list to your board
    • 7. samm: Click on the “save all in target” icon to save the updated PDO list onto your board[*].

Siin on endineampFikseeritud pakkumise PDO defineerimise näide koodis:

/* 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

Exampkonfiguratsiooni

Fikseeritud toitega PDO puhul 5 V ja 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

Täiendavad kaalutlused: 

  • 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[*] .

KPN-i loomine hõlmab mahu määratlemisttage ja voolu (või võimsuse) parameetrid ning nende konfigureerimine selliste tööriistade abil nagu STM32CubeMonUCPD või otse koodis. Järgides samme ja näiteampPakutavate programmide abil saate tõhusalt luua ja hallata PDO-sid oma USB PD-rakenduste jaoks.

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

Jah, on olemas funktsioon, mis toetab prioriseerimisskeemi, kui ühendatud on rohkem kui üks PD-valamu. See on eriti kasulik olukordades, kus ühe toiteallikaga on ühendatud mitu seadet. Toitejaotust tuleb hallata prioriteedi alusel.

Prioriseerimisskeemi saab hallata funktsiooni USBPD_DPM_SNK_EvaluateCapabilities abil. See funktsioon hindab PD-allikast vastuvõetud võimekusi ja koostab päringusõnumi neelu nõuete ja prioriteetide põhjal. Mitme neelu korral saate rakendada prioriseerimisskeemi, määrates igale neelule prioriteeditasemed ja muutes funktsiooni USBPD_DPM_SNK_EvaluateCapabilities nende prioriteetide arvestamiseks.

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

Kas GUI jaoks on DMA ja LPUART kasutamine kohustuslik?

Jah, ST-LINK-lahenduse kaudu suhtlemine on kohustuslik.

Kas LPUART-i sõnapikkuse säte 7 bitti on õige?

Jah, see on õige.

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?

ALLIKAS (allikas) korral vajab USB Type-C® 3.3 V või 5.0 V pingega ühendatud tõmbetakistit. See toimib vooluallika generaatorina. Selle vooluallika saab energiatarbimise vähendamiseks keelata, kui USB Type-C® PD-d ei kasutata.

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

FreeRTOS-i kasutamine USB toiteallika (USB PD) rakenduste jaoks STM32G0 mikrokontrolleril ei ole kohustuslik. Saate USB PD-d rakendada ka ilma RTOS-ita, käsitledes sündmusi ja olekumasinaid põhiahelas või katkestades teenindusrutiine. Kuigi on olnud taotlusi USB toiteallika kohta, näiteksampilma RTOS-ita. Praegu pole RTOS-väliseid näiteampfail on saadaval. Kuid mõned AzureRTOS-i näitedampon saadaval STM32U5 ja H5 seeria jaoks.

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 annab UCPD välisseadmele kerneli kella, seega pole HSE kasutamisest mingit kasu. Samuti toetab STM32G0 seadmerežiimis USB 2.0 kristallivaba režiimi, seega oleks HSE vajalik ainult USB 2.0 hostirežiimis.

Joonis 3. UCPD reset and clocks

UCPD reset and clocks

Kas on olemas dokumente, millele saaksin viidata CubeMX-i seadistamiseks, nagu te hiljem selgitasite?

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?

Jah, STM32CubeMonitor saab teostada reaalset jälgimist, ühendades STM32 ja ST-LINKi.

Kas VBUS-i maht ontagKas monitori ekraanil demonstreeritud e/voolu mõõtmise funktsioon on UCPD-toega plaatidel saadaval nii põhi- kui ka vaikeseadetes või on see lisatud NUCLEO plaadi funktsioon?

Täpne voltage mõõtmine on saadaval natiivselt, kuna VBUS voltage is required by USB Type-C®.
Accurate current measurement can be done by TCPP02-M18 / TCPP03-M20 thanks to high side ampLiugvoolukaitseks kasutatakse ka liigvoolukaitset ja šunttakistit.

Rakenduskoodi generaator

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) või AzureRTOS (STM32H5 jaoks ntample).

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.
Õnneks STSW-2STPD01 has a complete firmware package for the two ports. It is then not necessary to generate code.

Kas see disainitööriist töötab kõigi USB Type-C®-ga mikrokontrolleritega?

Jah, X-CUBE-TCPP töötab iga STM32-ga, millel on UCPD kõigis toitejuhtmetes (SINK / SOURCE / Dual Role). See töötab iga STM32-ga 5 V Type-C SOURCE jaoks.

Tabel 1. Dokumendi läbivaatamise ajalugu

Kuupäev Läbivaatamine Muudatused
20. juuni 2025 1 Esialgne vabastamine.

Important Notice – Read Carefully

STMicroelectronics NV ja selle tütarettevõtted („ST”) jätavad endale õiguse teha ST-toodetes ja/või selles dokumendis igal ajal ilma ette teatamata muudatusi, parandusi, täiendusi, modifikatsioone ja täiendusi. Ostjad peaksid enne tellimuste esitamist hankima uusima asjakohase teabe ST-toodete kohta. ST tooteid müüakse vastavalt ST müügitingimustele, mis kehtisid tellimuse kinnitamise ajal.

Ostjad vastutavad ainuisikuliselt ST-toodete valiku, valiku ja kasutamise eest ning ST ei vastuta rakendusabi ega ostjate toodete disaini eest.

ST ei anna siinkohal mingit otsest ega kaudset litsentsi ühelegi intellektuaalomandi õigusele.

ST-toodete edasimüük, mille sätted erinevad siin esitatud teabest, tühistab ST-i antud tootele antud garantii.

ST ja ST logo on ST kaubamärgid. ST-kaubamärkide kohta lisateabe saamiseks vaadake www.st.com/trademarks. Kõik muud toote- või teenusenimed kuuluvad nende vastavatele omanikele.

Selles dokumendis sisalduv teave asendab ja asendab selle dokumendi varasemates versioonides esitatud teabe.

© 2025 STMicroelectronics – kõik õigused kaitstud
Logo

Dokumendid / Ressursid

ST STM32 USB Type-C toiteallikas [pdfKasutusjuhend
TN1592, UM2552, STEVAL-2STPD01, STM32 USB Type-C toiteallikas, STM32, USB Type-C toiteallikas, C-tüüpi toiteallikas, Toiteallikas, Kohaletoimetamine

Viited

Jäta kommentaar

Teie e-posti aadressi ei avaldata. Kohustuslikud väljad on märgitud *