STM32 USB Type-C tápellátás

STM32 USB Type-C tápellátás

Bevezetés

Ez a dokumentum az STM32 USB Type-C®-vel és a tápellátással kapcsolatos gyakori kérdések (GYIK) listáját tartalmazza.

USB Type-C® tápellátás

Használható az USB Type-C® PD adatátvitelre? (Nem használom az USB nagysebességű adatátviteli funkcióit)

Bár maga az USB Type-C® PD nem nagysebességű adatátvitelre készült, más protokollokkal és alternatív módokkal is használható, és kezeli az alapvető adatátvitelt.

Mi a VDM UCPD modul gyakorlati haszna?

Az USB Type-C® tápellátásban a gyártó által meghatározott üzenetek (VDM) rugalmas mechanizmust biztosítanak az USB Type-C® PD funkcionalitásának kiterjesztésére a szabványos tápellátási egyeztetésen túl. A VDM-ek lehetővé teszik az eszközazonosítást, az alternatív módokat, a firmware-frissítéseket, az egyéni parancsokat és a hibakeresést. A VDM-ek megvalósításával a gyártók saját funkciókat és protokollokat hozhatnak létre, miközben megőrzik az USB Type-C® PD specifikációval való kompatibilitást.

Az STM32CubeMX-et meghatározott paraméterekkel kell konfigurálni, hol érhetők el ezek?

A legújabb frissítés felhasználóbarátabbá tette a kijelzőn megjelenő információkat, most a kezelőfelület egyszerűen csak a hangerőt kéri le.tage és a kívánt áram. Ezek a paraméterek azonban megtalálhatók a dokumentációkban, az AN5418-ban egy gyors referencia táblázatot talál.

1. ábraSpecifikációs részletek (6-14. táblázat az univerzális soros busz tápellátási specifikációjában)
USB Type-C® tápellátás

2. ábra magyarázza az alkalmazott 0x02019096 értéket.
2. ábra. Részletes PDO dekódolás
USB Type-C® tápellátás

A PDO definíciójával kapcsolatos további részletekért tekintse meg az UM2552 POWER_IF szakaszát.

Mekkora az USB interfész maximális kimeneti árama?

Az USB Type-C® PD szabvány által megengedett maximális kimeneti áram 5 A egy adott 5 A-es kábellel. Egy adott kábel nélkül a maximális kimeneti áram 3 A.

Ez a „kettős szerepű mód” azt jelenti, hogy fordítva is lehet áramot szolgáltatni és tölteni?

Igen, a DRP (kettős szerepkörű port) táplálható (nyelő) vagy táplálható (forrás). Általában akkumulátoros eszközökön használják.

STM32 tápellátási vezérlő és védelem

Az MCU csak a PD szabványt vagy a QC-t is támogatja?

Az STM32 mikrovezérlők elsősorban az USB Power Delivery (PD) szabványt támogatják, amely egy rugalmas és széles körben elterjedt protokoll a tápellátáshoz USB Type-C® csatlakozásokon keresztül. Az STM32 mikrovezérlők vagy az STMicroelectronics USB PD stackje nem biztosít natív támogatást a Quick Charge (QC) technológiához. Ha Quick Charge támogatásra van szükség, akkor egy dedikált QC vezérlő IC-t kell használni az STM32 mikrovezérlővel.

Lehetséges-e szinkron egyenirányító algoritmust megvalósítani a csomagban? Képes több kimenetet és vezérlőszerepkört kezelni?

Egy több kimenettel és vezérlő szerepkörrel rendelkező szinkron egyenirányító algoritmus megvalósítása STM32 mikrovezérlőkkel megvalósítható. A PWM és ADC perifériák konfigurálásával és egy vezérlőalgoritmus kidolgozásával hatékony teljesítményátalakítás érhető el és több kimenet kezelhető. Ezenkívül olyan kommunikációs protokollok használatával, mint az I2C vagy az SPI, több eszköz működése koordinálható egy vezérlő-célpont konfigurációban. PéldáulampPéldául a STEVAL-2STPD01 egyetlen STM32G071RBT6 egységgel, amely két UCPD vezérlőt tartalmaz, két Type-C 60 W-os Type-C tápellátási portot képes kezelni.

Létezik TCPP 20 V-nál nagyobb VBUS-hoz? Ezek a termékek vonatkoznak az EPR-re?

A TCPP0 sorozat akár 20 V VBUS feszültségre is alkalmas.tage SPR (Standard teljesítménytartomány).

Melyik STM32 mikrovezérlő sorozat támogatja az USB Type-C® PD-t?

Az USB Type-C® PD kezelésére szolgáló UCPD periféria a következő STM32 sorozatú eszközökbe van beépítve: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6 és STM32MP2. A dokumentum írásakor 961 P/N értéket ad meg.

Hogyan lehet az STM32 MCU-t USB soros eszközként működtetni az USB CDC osztályt követve? Ugyanez vagy hasonló eljárás segíthet nekem kód nélküli átfutásban?

Az USB-n keresztüli kommunikációt valós példák támogatjákampfelfedező vagy értékelő eszközök széles választéka, beleértve az átfogó szabad szoftverkönyvtárakat és példákatampAz MCU csomagban elérhető fájlok. A kódgenerátor nem érhető el.

Lehetséges-e dinamikusan módosítani a PD 'adatokat' a szoftver futásidejében? Pl. voltagés a jelenlegi igények/képességek, fogyasztó/szolgáltató stb.?

Az USB Type-C® PD-nek köszönhetően dinamikusan módosítható a teljesítményszerep (fogyasztó – SINK vagy szolgáltató – SOURCE), a teljesítményigény (teljesítményadat-objektum) és az adatszerep (gazdagép vagy eszköz). Ezt a rugalmasságot a következő szemlélteti: STM32H7RS USB kettős szerepű adat- és tápellátás-videó.

Lehetséges az USB 2.0 szabvány és a Power Delivery (PD) használatával 500 mA-nél nagyobb áramerősséget fogadni?

Az USB Type-C® PD nagy teljesítményű és gyors töltési képességet biztosít USB-eszközök számára az adatátviteltől függetlenül. Így több mint 500 mA vétele lehetséges USB 2.x és 3.x szabványú átvitel közben.

Van lehetőségünk információkat olvasni a forrás- vagy nyelőeszközről, például az USB-eszköz PID/UID-ját?

Az USB PD különféle üzenettípusok cseréjét támogatja, beleértve a kiterjesztett üzeneteket is, amelyek részletes gyártói információkat hordozhatnak. Az USBPD_PE_SendExtendedMessage API célja ennek a kommunikációnak a megkönnyítése, lehetővé téve az eszközök számára, hogy olyan adatokat kérjenek és fogadjanak, mint a gyártó neve, a termék neve, a sorozatszám, a firmware verziója és a gyártó által meghatározott egyéb egyéni információk.

Amikor egy TCPP1-M1-t is tartalmazó X-NUCLEO-SNK01M12 árnyékolást használunk, az X-CUBE-TCPP-t is használni kell? Vagy az X-CUBE-TCPP ebben az esetben opcionális?

Az USB Type-C® PD megoldás SINK módban történő indításához az X-CUBE-TCPP ajánlott a megvalósítás megkönnyítése érdekében, mivel az STM32 USB Type-C® PD megoldást kezelni kell. A TCPP01-M12 a hozzá tartozó optimális védelem.

Az USB NYÁK-okon az USB adatvezetékek (D+ és D-) 90 ohmos differenciáljelként vannak elvezetve. A CC1 és CC2 vezetékeknek is 90 ohmos jeleknek kell lenniük?

A CC vonalak egyvégűek, 300 kbps alacsony frekvenciájú kommunikációval. A karakterisztikus impedancia nem kritikus fontosságú.

Védheti-e a TCPP a D+ és D- jelszinteket?

A TCPP nem alkalmas a D+/- vonalak védelmére. A D+/- vonalak védelmére USBLC6-2 ESD-védelem ajánlott, vagy ECMF2-40A100N6 ESD védelem + közös módusú szűrő, ha rádiófrekvenciák vannak a rendszeren.

A meghajtó HAL vagy regiszter beágyazott?

A sofőr HAL.

Hogyan biztosíthatom, hogy az STM32 helyesen kezelje a teljesítményegyeztetést és az áramkezelést a PD protokollban kód írása nélkül?

Az első lépés egy sor terepi interoperabilitási teszt lehet a piacon elérhető eszközök használatával. A megoldás viselkedésének megértése érdekében az STM32CubeMonUCPD lehetővé teszi az STM32 USB Type-C® és Power Delivery alkalmazások monitorozását és konfigurálását.

A második lépés egy USB-IF (USB implementer forum) megfelelőségi program keretében történő tanúsítvány megszerzése lehet egy hivatalos TID (Test Identification) szám megszerzéséhez. Ez elvégezhető egy USB-IF által támogatott megfelelőségi workshopon vagy egy hivatalos független tesztlaboratóriumban.

Az X-CUBE-TCPP által generált kód készen áll a tanúsításra, és a Nucleo/Discovery/Evaluation board megoldásai már tanúsítva vannak.

Hogyan lehet megvalósítani a C típusú portvédelem OVP funkcióját? Be lehet állítani a hibahatárt 8%-on belül?

Az OVP küszöbértéket egy térfogatmérő állítja be.tagegy elválasztó híd, amely egy fix tiltott sávú komparátorra van csatlakoztatva.
A komparátor bemenete VBUS_CTRL a TCPP01-M12-n és Vsense a TCPP03-M20-on. OVP VBUS küszöbérték voltage HW-ként módosítható a térfogat szerinttage osztó arány.
Azonban ajánlott az X-NUCLEO-SNK1M1 vagy X-NUCLEO-DRP1M1 által bemutatott osztóarány használata a célzott maximális térfogatnak megfelelően.tage.

Magas a nyitottság mértéke? Testre szabhatók bizonyos feladatok?

Az USB Type-C® PD verem nem nyílt. Azonban lehetőség van az összes bemenetének és a megoldással való interakciónak a testreszabására. Az STM32 referencia kézikönyvében is megtekintheti az UCPD interfészt.

Mire kell figyelni a portvédelmi áramkör tervezésekor?

A TCPP IC-t a C típusú csatlakozó közelében kell elhelyezni. A kapcsolási rajzra vonatkozó ajánlások a felhasználói kézikönyvekben találhatók. X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, és X-NUCLEO-DRP1M1Az ESD-állóság megfelelő biztosítása érdekében javaslom, hogy tekintse meg a következőt: ESD elrendezési tippek alkalmazási megjegyzés.

Manapság sok kínai egychipes integrált áramkört vezetnek be a piacra. Milyen konkrét előnyei vannak?tagMi az STM32 használatának oka?

Ennek a megoldásnak a fő előnyei akkor mutatkoznak meg, amikor egy meglévő STM32 megoldáshoz egy C típusú PD csatlakozót adunk. Így költséghatékony, mivel az alacsony térfogat...tagAz UCPD vezérlő STM32-re van beágyazva, és nagy feszültségűtagA vezérlést / védelmet a TCPP végzi.

Van az ST által ajánlott megoldás tápegységgel és STM32-UCPD-vel?

Teljes értékű exekample a USB Type-C tápellátási kétportos adapter az STPD01 programozható buck konverteren alapul. Az STM32G071RBT6 és két TCPP02-M18 két STPD01PUR programozható buck szabályozót támogat.

Mi a megfelelő megoldás egy mosogató (60 W-os monitor) esetén, HDMI vagy DP bemenettel és tápellátással rendelkező alkalmazás esetén?

Az STM32-UCPD + TCPP01-M12 akár 60 W-os leadási teljesítményt is támogat. HDMI vagy DP esetén alternatív módra van szükség, ami szoftveresen megoldható.

Ezek a termékek azt jelentik, hogy tesztelték őket az USB-IF és az USB megfelelőség szabványos előírásai szerint?

A firmware csomagon generált vagy javasolt kódot tesztelték és hivatalosan tanúsították néhány kulcsfontosságú hardverkonfigurációhoz. PéldáulampAz X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1 és X-NUCLEO-DRP1M1 chipek hivatalosan tanúsítottak, az USB-IF tesztazonosítóik pedig: TID5205, TID6408 és TID7884.

Konfigurációs és alkalmazáskód

Hogyan hozhatok létre egy PDO-t?

Egy teljesítményadat-objektum (PDO) létrehozása az USB tápellátás (PD) kontextusában magában foglalja egy USB PD forrás vagy nyelő tápellátási képességeinek meghatározását. A PDO létrehozásának és konfigurálásának lépései a következők:

  1. Azonosítsa az OEM típusát:
    • Fix ellátású PDO: Fix térfogatot határoz megtage és áram
    • Akkumulátoros tápellátás PDO: Meghatároz egy térfogattartományttagés maximális teljesítmény
    • Változó ellátású PDO: Meghatároz egy térfogattartományttagés a maximális áramerősség
    • Programozható tápegység (PPS) APDO: Lehetővé teszi a programozható hangerőttage és áram.
  2. Határozza meg a paramétereket:
    • Voltage: A kötettaga PDO által biztosított vagy kért szint
    • Áramerősség / teljesítmény: A PDO által biztosított áram (fix és változó PDO-k esetén) vagy teljesítmény (akkumulátoros PDO-k esetén)
      vagy kérés.
  3. Használja az STM32 Cube MonUCPD grafikus felhasználói felületét:
    • 1. lépésGyőződjön meg róla, hogy az STM32 Cube Mon UCPD alkalmazás legújabb verziójával rendelkezik.
    • 2. lépésCsatlakoztasd az STM32G071-Disco kártyádat a gazdagépedhez, és indítsd el az STM32 Cube Monitor-UCPD alkalmazást.
    • 3. lépés: Válaszd ki a tábládat az alkalmazásban
    • 4. lépés: Navigáljon a „portkonfiguráció” oldalra, és kattintson a „fogadóképességek” fülre a megtekintéshez.
      jelenlegi OEM lista
    • 5. lépés: Módosítson egy meglévő PDO-t, vagy adjon hozzá egy új PDO-t az utasításokat követve
    • 6. lépésKattintson a „küldés a célállomásra” ikonra a frissített PDO-lista táblájára küldéséhez.
    • 7. lépésKattintson az „összes mentése a célhelyen” ikonra a frissített PDO-lista táblára mentéséhez[*].

Itt van egy exampLeírás, hogyan definiálhatsz egy fix ellátású PDO-t kódban:

/* 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 konfigurációt

Fix tápellátású, 5 V-os és 3 A-es PDO esetén:

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

További szempontok: 

  • Dinamikus PDO kiválasztás: A PDO kiválasztási módszert futásidőben dinamikusan módosíthatja az USED_PDO_SEL_METHOD változó módosításával az usbpd_user_services.c fájlban. file[*] .
  • Képességek kiértékelése: Használjon olyan függvényeket, mint az USBPD_DPM_SNK_EvaluateCapabilities a fogadott képességek kiértékeléséhez és a kérésüzenet előkészítéséhez.[*] .

Egy PDO létrehozása magában foglalja a térfogat meghatározásáttage és áram (vagy teljesítmény) paraméterek, és ezek konfigurálása olyan eszközökkel, mint az STM32CubeMonUCPD, vagy közvetlenül kódban. A lépéseket és példákat követveampA rendelkezésre álló programokkal hatékonyan hozhat létre és kezelhet PDO-kat USB PD alkalmazásaihoz.

Létezik függvény egy olyan priorizálási sémához, amelyhez egynél több PD-nyelő van csatlakoztatva?

Igen, van egy funkció, amely támogatja a priorizálási sémát, amikor egynél több PD-nyelő van csatlakoztatva. Ez különösen hasznos olyan esetekben, amikor több eszköz csatlakozik egyetlen áramforráshoz. Az energiaelosztást prioritás alapján kell kezelni.

A priorizálási séma az USBPD_DPM_SNK_EvaluateCapabilities függvénnyel kezelhető. Ez a függvény kiértékeli a PD forrástól kapott képességeket, és a nyelő követelményei és prioritásai alapján készíti elő a kérésüzenetet. Több nyelő esetén priorizálási sémát valósíthat meg úgy, hogy prioritási szinteket rendel az egyes nyelőkhöz, és módosítja az USBPD_DPM_SNK_EvaluateCapabilities függvényt ezen prioritások figyelembevételével.

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

Kötelező a DMA és az LPUART használata a grafikus felhasználói felülethez?

Igen, kötelező ST-LINK megoldáson keresztül kommunikálni.

Helyes az LPUART 7 bites szóhossz-beállítása?

Igen, ez helyes.

Az STM32CubeMX eszközben van egy jelölőnégyzet, amelyen bejelölve látható a „nem aktív UCPD energiatakarékossága – lemerült akkumulátor jelzésének kikapcsolása”. Mit jelent ez a jelölőnégyzet, ha engedélyezve van?

FORRÁS esetén az USB Type-C®-hez egy 3.3 V vagy 5.0 V feszültséghez csatlakoztatott felhúzó ellenállás szükséges. Ez áramforrás-generátorként működik. Ez az áramforrás letiltható, ha az USB Type-C® PD-t nem használják az energiafogyasztás csökkentése érdekében.

Szükséges FreeRTOS-t használni STM32G0 és USB PD alkalmazásokhoz? Vannak tervek nem FreeRTOS USB PD alkalmazásokra?amples?

Nem kötelező FreeRTOS-t használni az STM32G0 mikrovezérlőn futó USB Power Delivery (USB PD) alkalmazásokhoz. Az USB PD RTOS nélkül is megvalósítható események és állapotgépek kezelésével a fő hurokban, vagy a szervizrutinok megszakításával. Bár voltak igények az USB Power Deliveryre, pl.ampRTOS nélküli alkalmazások. Jelenleg nincsenek nem RTOS példákampfájl elérhető. De néhány AzureRTOS exampAz STM32U5 és a H5 sorozathoz elérhetők.

Az STM32CubeMX demóban, ahol egy STM32G0-hoz készült USB PD alkalmazást építek, elfogadható-e a HSI pontosság USB PD alkalmazásokhoz? Vagy kötelező külső HSE kristályt használni?

A HSI biztosítja az UCPD periféria kernel órajelét, így a HSE használatának nincs előnye. Az STM32G0 emellett támogatja a kristálymentes USB 2.0-t eszköz módban, így a HSE-re csak USB 2.0 host módban lenne szükség.

3. ábraAz UCPD visszaállítása és az órajelek

UCPD visszaállítás és órajelek

Van bármilyen dokumentáció, amire hivatkozhatok a CubeMX beállításához, ahogy azt később kifejtetted?

A dokumentáció a következő elérhetőségen érhető el Wiki link.

Képes az STM 32 Cube Monitor valós idejű monitorozásra? Lehetséges a valós idejű monitorozás az STM32 és az ST-LINK összekapcsolásával?

Igen, az STM32CubeMonitor valós monitorozást tud végezni az STM32 és az ST-LINK összekapcsolásával.

A VBUS hangerőszintjetagAz UCPD-képes kártyákon alapértelmezés szerint és alapértelmezetten elérhető a monitoron bemutatott e/árammérés funkció, vagy ez a hozzáadott NUCLEO kártya jellemzője?

Pontos voltagAz e mérés natívan elérhető, mivel a VBUS voltagAz USB Type-C® szabványnak e-re van szüksége.
A TCPP02-M18 / TCPP03-M20 pontos árammérést tesz lehetővé a magas oldali ellenállásnak köszönhetően. ampA söntellenállást és az ellenállást túláramvédelemre is használják.

Alkalmazáskód-generátor

Tud a CubeMX Azure RTOS alapú projektet generálni az X-CUBE-TCPP-vel ugyanúgy, mint a FreeRTOS™? Tudja-e generálni az USB PD-t kezelő kódot FreeRTOS™ használata nélkül? Szükség van-e RTOS-ra a szoftvercsomag működéséhez?

Az STM32CubeMX az X-CUBE-TCPP csomagnak köszönhetően generál kódot az MCU-hoz elérhető RTOS, a FreeRTOS™ (az STM32G0-hoz például) használatával.ample), vagy AzureRTOS (az STM32H5 esetében, mint példáulample).

Az X-CUBE-TCPP képes kódot generálni kettős Type-C PD porthoz, például az STSW-2STPD01 kártyához?

Az X-CUBE-TCPP csak egyetlen porthoz képes kódot generálni. Két porthoz viszont két különálló projektet kell generálni átfedés nélkül STM32 erőforrásokon és két I2C címmel a TCPP02-M18 számára, majd ezeket egyesíteni.
Szerencsére, STSW-2STPD01 teljes firmware csomaggal rendelkezik a két porthoz. Így nincs szükség kód generálására.

Ez a tervezőeszköz minden USB Type-C®-vel rendelkező mikrovezérlővel működik?

Igen, az X-CUBE-TCPP bármilyen UCPD-t tartalmazó STM32-vel működik, minden tápegység esetében (SINK / SOURCE / Dual Role). Bármely 32 V-os Type-C SOURCE STM5-vel működik.

1. táblázat. Dokumentum felülvizsgálati előzmények

Dátum Felülvizsgálat Változások
20-június 2025 1 Kezdeti kiadás.

Fontos figyelmeztetés – Olvassa el figyelmesen

Az STMicroelectronics NV és leányvállalatai („ST”) fenntartják a jogot, hogy bármikor, előzetes értesítés nélkül módosítsák, javítsák, bővítsék, módosítsák és tökéletesítsék az ST-termékeket és/vagy ezt a dokumentumot. A vásárlóknak meg kell szerezniük a legfrissebb releváns információkat az ST-termékekről a rendelés leadása előtt. Az ST termékek értékesítése a megrendelés visszaigazolásakor érvényes ST értékesítési feltételek szerint történik.

Kizárólag a vásárlók felelősek az ST-termékek kiválasztásáért, kiválasztásáért és használatáért, és az ST nem vállal felelősséget az alkalmazási segítségért vagy a vásárlók termékeinek tervezéséért.

Az ST jelen dokumentumban semmilyen szellemi tulajdonjogra nem ad kifejezett vagy hallgatólagos licencet.

Az ST-termékeknek az itt leírtaktól eltérő rendelkezésekkel történő viszonteladása érvénytelenít minden, az ST által az ilyen termékre adott garanciát.

Az ST és az ST logó az ST védjegyei. Az ST védjegyekkel kapcsolatos további információkért lásd: www.st.com/trademarks. Minden egyéb termék- vagy szolgáltatásnév a megfelelő tulajdonosok tulajdona.

A jelen dokumentumban szereplő információk felülírják és felváltják a jelen dokumentum bármely korábbi verziójában korábban megadott információkat.

© 2025 STMicroelectronics – Minden jog fenntartva
Logó

Dokumentumok / Források

ST STM32 USB Type-C tápellátás [pdf] Felhasználói kézikönyv
TN1592, UM2552, STEVAL-2STPD01, STM32 USB Type-C tápellátás, STM32, USB Type-C tápellátás, C típusú tápellátás, Tápellátás, Kézbesítés

Hivatkozások

Hagyj megjegyzést

E-mail címét nem tesszük közzé. A kötelező mezők meg vannak jelölve *