Radestkirina Hêzê ya STM32 USB Type-C

Pêşkêş
Ev belge lîsteyek ji pirsên pir caran têne pirsîn (FAQ) li ser STM32 USB Type-C® û Radestkirina Hêzê dihewîne.
Radestkirina Hêzê ya USB Type-C®
Can the USB Type-C® PD be used to transmit data? (Not using USB high-speed data transfer features)
Her çend USB Type-C® PD bi xwe ji bo veguhastina daneyên bilez nehatiye çêkirin jî, ew dikare bi protokolên din û modên alternatîf re were bikar anîn û veguhastina daneyên bingehîn birêve dibe.
Bikaranîna pratîkî ya modula VDM UCPD çi ye?
Peyamên ji hêla firoşkar ve hatine destnîşankirin (VDM) di USB Type-C® Power Delivery de mekanîzmayek nerm peyda dikin ji bo berfirehkirina fonksiyonên USB Type-C® PD ji danûstandina hêzê ya standard wêdetir. VDM naskirina cîhazê, modên alternatîf, nûvekirinên firmware, fermanên xwerû û çareserkirina çewtiyan çalak dikin. Bi bicîhkirina VDM-an, firoşkar dikarin taybetmendî û protokolên xwedan biafirînin di heman demê de lihevhatina bi taybetmendiya USB Type-C® PD re biparêzin.
STM32CubeMX needs to be configured with specific parameters, where are they available?
Nûvekirina herî dawî agahdariya nîşandanê guherand da ku bikarhêner-dostanetir be, naha navrû tenê daxwaza vol diketage û niha ya xwestî. Lêbelê, ev parametre dikarin di belgeyan de werin dîtin, hûn dikarin tabloyek referansê ya bilez di AN5418 de bibînin.
jimar 1. Specification detail (table 6-14 in universal serial bus Power Delivery specification)

jimar 2 explains the applied value 0x02019096.
Wêne 2. Dekodkirina PDO ya berfireh

Ji bo bêtir agahdarî li ser pênaseya PDO, li beşa POWER_IF di UM2552 de binêrin.
Herikîna derana herî zêde ya navrûya USB çi ye?
Herî zêde rêjeya derketinê ya ku ji hêla standarda USB Type-C® PD ve tê destûr kirin 5 A ye bi kabloyek taybetî ya 5 A. Bêyî kabloyek taybetî, rêjeya derketinê ya herî zêde 3 A ye.
Does this ‘Dual-role mode’ mean be able to supply power and charge in reverse?
Belê, DRP (porta dual rol) dikare were peyda kirin (lavaboyê), an jî dikare were peyda kirin (çavkanî). Ew bi gelemperî li ser cîhazên ku bi pîlê dixebitin tê bikar anîn.
Kontrolker û parastina radestkirina hêzê ya STM32
Ma piştgiriya MCU tenê standarda PD ye an QC jî?
Mîkrokontrolkerên STM32 bi giranî piştgirîya standarda USB Power Delivery (PD) dikin, ku protokoleke nerm û berfireh e ji bo Delivery Power li ser girêdanên USB Type-C®. Piştgiriya xwemalî ji bo Quick Charge (QC) ji hêla mîkrokontrolkerên STM32 an jî steka USB PD ya ji STMicroelectronics ve nayê peyda kirin. Ger piştgiriya Quick Charge hewce be, divê IC-ya kontrolkera QC-ya taybetî bi mîkrokontrolkera STM32 re were bikar anîn.
Is it possible to implement a synchronous rectification algorithm in the package? Can it manage multiple outputs and controller roles?
Bi mîkrokontrolkerên STM32 ve pêkanîna algorîtmayek rastkirina senkronîk bi gelek derketin û rolek kontrolker gengaz e. Bi mîhengkirina alavên periferîk ên PWM û ADC û pêşxistina algorîtmayek kontrolê, gengaz e ku veguherîna hêzê ya bi bandor were bidestxistin û gelek derketin werin birêvebirin. Wekî din, bi karanîna protokolên ragihandinê yên wekî I2C an SPI, xebata gelek cîhazan di mîhengkirina kontrolker-armanc de hevrêz bikin. Wekî mînakample, STEVAL-2STPD01 bi yek STM32G071RBT6-ê ku du kontrolkerên UCPD-ê dihewîne dikare du portên Radestkirina Hêzê ya Type-C 60 W Type-C birêve bibe.
Ma TCPP ji bo VBUS > 20 V heye? Ma ev berhem ji bo EPR-ê derbas dibin?
Rêzeya TCPP0 heta 20 V VBUS vol têne nirxandin.tage SPR (Rêzeya Hêza Standard).
Kîjan rêzeya mîkrokontrolkerên STM32 piştgirîya USB Type-C® PD dike?
Amûra pêvek a UCPD ji bo birêvebirina USB Type-C® PD di rêzeya STM32 ya jêrîn de hatiye bicîhkirin: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6, û STM32MP2. Di dema nivîsandina belgeyê de 961 P/N dide.
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?
Danûstandin li ser çareseriya USB-ê ji hêla ex-ya rastîn ve tê piştgirî kirinampkêmasiyên amûrên vedîtin an nirxandinê, di nav de pirtûkxaneyên nermalava belaş ên berfireh û mînakampPelên bi pakêta MCU re hene. Çêkera kodê peyda nabe.
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 ji bo cîhazên USB-ê bêyî veguhestina daneyan şiyanên hêz û şarjkirina bilez peyda dike. Ji ber vê yekê, dema ku di USB 500.x, 2.x de tê şandin, gengaz e ku ji 3 mA-yê zêdetir were wergirtin.
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 piştgiriya danûstandina celebên cûda yên peyaman dike, di nav de peyamên berfireh ên ku dikarin agahdariya berfireh a hilberîner hilgirin. API-ya USBPD_PE_SendExtendedMessage ji bo hêsankirina vê ragihandinê hatî çêkirin, û dihêle ku cîhaz daneyên wekî navê hilberîner, navê hilberê, jimara rêzê, guhertoya firmware, û agahdariyên din ên xwerû yên ku ji hêla hilberîner ve hatine destnîşankirin daxwaz bikin û bistînin.
Dema ku mertalek X-NUCLEO-SNK1M1 tê bikar anîn ku TCPP01-M12 jî dihewîne, divê X-CUBE-TCPP jî were bikar anîn? An jî X-CUBE-TCPP di vê rewşê de vebijarkî ye?
Ji bo destpêkirina çareseriya USB Type-C® PD li ser moda SINK, X-CUBE-TCPP tê pêşniyar kirin da ku pêkanînê hêsan bike ji ber ku çareseriya STM32 USB Type-C® PD hewce ye ku were birêvebirin. TCPP01-M12 parastina çêtirîn a têkildar e.
Li ser PCB-yên USB-yê, xetên daneya USB-yê (D+ û D-) wekî sînyalên cûda yên 90-Ohm têne rêve kirin. Gelo divê şopên CC1 û CC2 jî sînyalên 90-Ohm bin?
Xetên CC xetên yek-serî ne ku bi danûstendina frekanseke nizm a 300 kbps ne. Împedansa taybetmendî ne girîng e.
Ma TCPP dikare D+, D- biparêze?
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.
Ajokar HAL an qeydkirin kapsulkirî ye?
Şofêr HAL e.
Ez çawa dikarim piştrast bikim ku STM32 danûstandina hêzê û rêveberiya herikê di protokola PD de bêyî nivîsandina kodê bi rêkûpêk birêve dibe?
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.
Çawa fonksiyona OVP ya parastina porta Type-C tê bicîhanîn? Gelo marja xeletiyê dikare di nav 8% de were danîn?
Asta OVP ji hêla vol ve tê danîn.tage 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 dikare li gorî vol were guhertin HWtage 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.
Asta vekirîbûnê bilind e? Dikare hin ji karên taybetî xwerû bike?
Stacka USB Type-C® PD vekirî nîne. Lêbelê, gengaz e ku hemî têketinên wê û têkiliya wê bi çareseriyê re werin xweş kirin. Her weha, hûn dikarin li rêbernameya referansê ya STM32-ê ya ku ji bo nihêrîna li ser navrûya UCPD-ê tê bikar anîn binêrin.
Di sêwirana devreya parastina portê de divê em bala xwe bidin çi?
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, û X-NUCLEO-DRP1M1. To insure a good ESD robustness, I would recommend having a look on ESD layout tips application note.
Van rojan, gelek IC-yên yek-çîp ji Çînê têne nasandin. Avantajên taybetî çi ne?tagÇawaniya bikaranîna STM32?
Feydeyên sereke yên vê çareseriyê dema ku girêdanek PD ya Type-C li çareseriyek STM32 ya heyî tê zêdekirin xuya dibin. Wê demê, ew ji ber ku voltaja kêm e, ew bi arzanî ye.tagKontrolkera UCPD li ser STM32-ê hatiye bicîhkirin, û voltaja bilindtagKontrol/parastin ji hêla TCPP ve tê kirin.
Ma çareseriyek pêşniyarkirî ji hêla ST ve bi dabînkirina hêzê û STM32-UCPD re heye?
Ew berêyekî tam inample bi 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.
Ji bo Lavaboyek (monîtorek pola 60 W), serîlêdana HDMI an têketina DP û hêzê çareseriya guncaw çi ye?
STM32-UCPD + TCPP01-M12 dikare hêza daketina heta 60 W piştgirî bike. Ji bo HDMI an DP, moda alternatîf hewce ye, û ev dikare bi nermalavê were kirin.
Ma ev berhem tê wê wateyê ku ew ji bo taybetmendiyên standard ên USB-IF û lihevhatina USB-ê hatine ceribandin?
Kodên ku li ser pakêta firmware hatine çêkirin an pêşniyarkirin ji bo hin mîhengên sereke yên HW-ê hatine ceribandin û bi fermî hatine pejirandin. Wekî mînakample, X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, û X-NUCLEO-DRP1M1 li ser NUCLEO bi fermî hatine pejirandin û nasnameyên testa USB-IF ev in: TID5205, TID6408, û TID7884.
Koda mîhengkirin û serîlêdanê
Ez çawa dikarim PDO ava bikim?
Avakirina objeyek daneya hêzê (PDO) di çarçoveya Radestkirina Hêza USB (PD) de tê wateya destnîşankirina şiyanên hêzê yên çavkaniyek an jî sîwanek PD ya USB. Li vir gavên ji bo afirandin û mîhengkirina PDO hene:
- Identify the type of PDO:
- Fixed supply PDO: Defines a fixed voltage û niha
- 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 û niha.
- Parametreyan diyar bikin:
- Voltage: The voltagasta e ku PDO peyda dike an daxwaz dike
- Current / power: The current (for fixed and variable PDOs) or power (for battery PDOs) the PDO provide
or request.
- Use the STM32 Cube MonUCPD GUI:
- Asta 1ê: Ensure you have the latest version of the STM32 Cube Mon UCPD application
- Asta 2ê: Connect your STM32G071-Disco board to your host machine and launch the STM32 Cube Monitor-UCPD application
- Asta 3ê: Select your board in the application
- Asta 4ê: Navigate to the “port configuration” page and click on the “sink capabilities” tab to see the
current PDO list - Asta 5ê: Modify an existing PDO or add a new PDO by following the prompts
- Asta 6ê: Click on the “send to target” icon to send the updated PDO list to your board
- Asta 7ê: Click on the “save all in target” icon to save the updated PDO list onto your board[*].
Va ye exampçend mînak li ser ka hûn çawa dikarin PDO-yek dabînkirina sabît di kodê de pênase bikin:
/* 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 veavakirina
Ji bo PDO-ya dabînkirina sabît bi 5 V û 3A:
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
Nîqaşên din:
- 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[*] .
Avakirina PDO-yê pênasekirina volê vedihewîne.tagparametreyên e û niha (an hêz) û mîhengkirina wan bi karanîna amûrên mîna STM32CubeMonUCPD an rasterast di kodê de. Bi şopandina gavan û mînakanampBi van pêvekan, hûn dikarin bi bandor PDO-yan ji bo sepanên USB PD-ya xwe biafirînin û birêve bibin.
Is there a function for a prioritizing scheme with more than one PD-sink connected?
Belê, fonksiyonek heye ku dema ku ji yekê zêdetir PD-sink ve girêdayî be, şêmaya pêşanîyê piştgirî dike. Ev bi taybetî di senaryoyên ku gelek cîhaz bi yek çavkaniyek hêzê ve girêdayî ne de kêrhatî ye. Dabeşkirina hêzê divê li gorî pêşanîyê were birêvebirin.
Şêweya pêşîniyê dikare bi karanîna fonksiyona USBPD_DPM_SNK_EvaluateCapabilities were birêvebirin. Ev fonksiyon şiyanên wergirtî ji çavkaniya PD dinirxîne û peyama daxwazê li gorî hewcedarî û pêşîniyên sinkê amade dike. Dema ku hûn bi gelek sinkan re mijûl dibin, hûn dikarin bi destnîşankirina astên pêşîniyê ji her sinkê re û guhertina fonksiyona USBPD_DPM_SNK_EvaluateCapabilities da ku van pêşîniyan li ber çavan bigirin, şêweyek pêşîniyê bicîh bînin.
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
Ma bikaranîna DMA bi LPUART re ji bo GUI mecbûrî ye?
Belê, ragihandin bi rêya çareseriyek ST-LINK mecbûrî ye.
Ma mîhengkirina LPUART ya 7 bit ji bo dirêjahiya peyvê rast e?
Belê, rast e.
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?
Dema ku SOURCE be, USB Type-C® hewceyê berxwedêrek kişandinê ye ku bi 3.3 V an 5.0 V ve girêdayî ye. Ew wekî jeneratorek çavkaniya herikê tevdigere. Ev çavkaniya herikê dikare were neçalak kirin dema ku USB Type-C® PD ji bo kêmkirina xerckirina enerjiyê neyê bikar anîn.
Is it necessary to use FreeRTOS for STM32G0 and USB PD applications? Any plans for non-FreeRTOS USB PD examples?
Bikaranîna FreeRTOS ji bo sepanên USB Power Delivery (USB PD) li ser mîkrokontrolkera STM32G0 ne mecbûrî ye. Hûn dikarin USB PD bêyî RTOS bi rêvebirina bûyer û makîneyên rewşê di çerxa sereke de an jî bi rêya qutkirina rûtînên xizmetê bicîh bînin. Her çend daxwaz ji bo USB Power Delivery jî hene.amppelên bê RTOS. Niha yên ne-RTOS tune ne.ample heye. Lê hin AzureRTOS example ji bo rêzeyên STM32U5 û H5 hene.
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 demjimêra kernel ji bo cîhaza UCPD peyda dike, ji ber vê yekê ti feydeya karanîna HSE tune. Her wiha, STM32G0 di moda cîhazê de piştgiriya bêkrîstal ji bo USB 2.0 dike, ji ber vê yekê HSE tenê di moda mêvandar a USB 2.0 de hewce ye.
jimar 3. UCPD reset and clocks

Ma belgeyek heye ku ez bikaribim ji bo sazkirina CubeMX-ê wekî ku we paşê rave kir, jê re bişînim?
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?
Belê, STM32CubeMonitor dikare bi girêdana STM32 û ST-LINK çavdêriya rastîn pêk bîne.
Ma VBUS vol e?tagfonksiyona pîvandina e/herikê ya li ser ekrana monitorê tê nîşandan ku ji hêla bingehîn û xwerû ve li ser panelên ku UCPD-ê çalak in peyda dibe, an ew taybetmendiyek panela NUCLEO ya zêdekirî ye?
Accurate voltagPîvandina e bi awayekî xwerû peyda dibe ji ber ku VBUS voltage is required by USB Type-C®.
Accurate current measurement can be done by TCPP02-M18 / TCPP03-M20 thanks to high side amprizgarker û berxwedêrê şuntê jî ji bo parastina ji herikîna zêde tên bikaranîn.
Çêkerê koda sepanê
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), an AzureRTOS (ji bo STM32H5 wekî mînakample).
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.
Dilşane, STSW-2STPD01 has a complete firmware package for the two ports. It is then not necessary to generate code.
Ma ev amûra sêwirandinê bi hemî mîkrokontrolkerên bi USB Type-C® re dixebite?
Belê, X-CUBE-TCPP bi her STM32-ek re dixebite ku UCPD-ê ji bo hemî qutiyên hêzê (SINK / SOURCE / Dual Role) vedihewîne. Ew bi her STM32-ek re ji bo 5 V Type-C SOURCE dixebite.
Tablo 1. Dîroka guhertoya belgeyê
| Rojek | Nûxwestin | Changes |
| 20-Jun-2025 | 1 | Serbestberdana destpêkê. |
Important Notice – Read Carefully
STMicroelectronics NV û şaxên wê ("ST") mafê ku di her kêliyê de bêyî agahdarî li ser hilberên ST-ê û / an jî vê belgeyê biguhezînin, rastkirin, çêtirkirin, guheztin û çêtirkirinan diparêzin. Pêdivî ye ku kirrûbir berî ku fermanan bidin agahdariya herî dawî ya têkildar li ser hilberên ST bistînin. Berhemên ST di dema pejirandina fermanê de li gorî şert û mercên firotanê yên ST têne firotin.
Kiryar bi tenê ji bijartin, hilbijartin û karanîna hilberên ST berpirsiyar in û ST ji bo arîkariya serîlêdanê an sêwirana hilberên kirrûbiran berpirsiyarî nagire.
Li vir ji hêla ST ve ti destûrek, eşkere an jî têgihîştî, ji tu mafek milkê rewşenbîrî re nayê dayîn.
Ji nû ve firotina hilberên ST bi şertên ku ji agahdariya ku li vir hatî destnîşan kirin cûdatir dê garantiyek ku ST ji bo hilberek weha hatî dayîn betal bike.
ST û logoya ST marqeyên ST ne. Ji bo bêtir agahdarî li ser marqeyên ST, serî li www.st.com/trademarks. Hemî navên hilber an karûbarê din milkê xwediyên wan ên têkildar in.
Agahdariya di vê belgeyê de agahdariya ku berê di guhertoyên berê yên vê belgeyê de hatine peyda kirin digire û diguhezîne.
© 2025 STMicroelectronics - Hemî maf parastî ne

Belge / Çavkanî
![]() |
Radestkirina Hêzê ya ST STM32 USB Type-C [pdf] Rêbernameya Bikarhêner TN1592, UM2552, STEVAL-2STPD01, Radestkirina Hêzê ya USB Tîpa-C ya STM32, STM32, Radestkirina Hêzê ya USB Tîpa-C, Radestkirina Hêzê ya Tîpa-C, Radestkirina Hêzê, Radestkirin |
