Penghantaran Kuasa USB Jenis-C STM32

pengenalan
Dokumen ini mengandungi senarai soalan lazim (Soalan Lazim) mengenai STM32 USB Type-C® dan Power Delivery.
Penghantaran Kuasa USB Type-C®
Bolehkah USB Type-C® PD digunakan untuk menghantar data? (Tidak menggunakan ciri pemindahan data berkelajuan tinggi USB)
Walaupun USB Type-C® PD sendiri tidak direka untuk pemindahan data berkelajuan tinggi, ia boleh digunakan dengan protokol lain dan mod ganti serta menguruskan penghantaran data asas.
Apakah kegunaan praktikal modul UCPD VDM?
Mesej yang ditakrifkan vendor (VDM) dalam Penghantaran Kuasa USB Type-C® menyediakan mekanisme yang fleksibel untuk melanjutkan kefungsian USB Type-C® PD melebihi rundingan kuasa standard. VDM mendayakan pengenalpastian peranti, mod ganti, kemas kini perisian tegar, arahan tersuai dan nyahpepijat. Dengan melaksanakan VDM, vendor boleh mencipta ciri dan protokol proprietari sambil mengekalkan keserasian dengan spesifikasi USB Type-C® PD.
STM32CubeMX perlu dikonfigurasikan dengan parameter tertentu, di manakah ia tersedia?
Kemas kini terkini mengubah maklumat paparan menjadi lebih mesra pengguna, kini antara muka hanya meminta voltage dan semasa yang dikehendaki. Walau bagaimanapun, parameter ini boleh didapati dalam dokumentasi, anda boleh melihat jadual rujukan pantas dalam AN5418.
Rajah 1. Butiran spesifikasi (jadual 6-14 dalam spesifikasi Penghantaran Kuasa bas bersiri universal)

Rajah 2 menerangkan nilai yang digunakan 0x02019096.
Rajah 2. Penyahkodan PDO terperinci

Untuk butiran lanjut tentang definisi PDO, lihat bahagian POWER_IF dalam UM2552.
Apakah arus keluaran maksimum antara muka USB?
Arus keluaran maksimum yang dibenarkan oleh standard USB Type-C® PD ialah 5 A dengan kabel 5 A khusus. Tanpa kabel tertentu, arus keluaran maksimum ialah 3 A.
Adakah 'Dual-role mod' ini bermakna boleh membekalkan kuasa dan mengecas secara terbalik?
Ya, DRP (dual role port) boleh dibekalkan (sink), atau boleh dibekalkan (sumber). Ia biasanya digunakan pada peranti berkuasa bateri.
Pengawal dan perlindungan Penghantaran Kuasa STM32
Adakah MCU menyokong standard PD atau QC sahaja?
Mikropengawal STM32 terutamanya menyokong piawaian Penghantaran Kuasa USB (PD), yang merupakan protokol yang fleksibel dan diterima pakai secara meluas untuk Penghantaran Kuasa melalui sambungan USB Type-C®. Sokongan asli untuk Quick Charge (QC) tidak disediakan oleh mikropengawal STM32 atau timbunan PD USB daripada STMicroelectronics. Jika sokongan Caj Pantas diperlukan, IC pengawal QC khusus harus digunakan dengan mikropengawal STM32.
Adakah mungkin untuk melaksanakan algoritma pembetulan segerak dalam pakej? Bolehkah ia menguruskan berbilang output dan peranan pengawal?
Melaksanakan algoritma pembetulan segerak dengan berbilang output dan peranan pengawal boleh dilaksanakan dengan mikropengawal STM32. Dengan mengkonfigurasi peranti PWM dan ADC dan membangunkan algoritma kawalan, adalah mungkin untuk mencapai penukaran kuasa yang cekap dan mengurus berbilang output. Selain itu, menggunakan protokol komunikasi seperti I2C atau SPI menyelaraskan operasi berbilang peranti dalam konfigurasi sasaran pengawal. Sebagai bekasampiaitu, STEVAL-2STPD01 dengan STM32G071RBT6 tunggal yang membenamkan dua pengawal UCPD boleh mengurus dua port Penghantaran Kuasa Jenis-C 60 W Jenis-C.
Adakah terdapat TCPP untuk VBUS > 20 V? Adakah produk ini terpakai kepada EPR?
Siri TCPP0 dinilai sehingga 20 V VBUS voltage SPR (Julat Kuasa Standard).
Siri mikropengawal STM32 yang manakah menyokong USB Type-C® PD?
Peranti UCPD untuk mengurus USB Type-C® PD dibenamkan pada siri STM32 berikut: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6 dan STM32MP2. Ia memberikan 961 P/N pada masa dokumen itu ditulis.
Bagaimana untuk menjadikan MCU STM32 berfungsi sebagai peranti bersiri USB mengikuti kelas USB CDC? Adakah prosedur yang sama atau serupa membantu saya pergi tanpa kod?
Komunikasi melalui penyelesaian USB disokong oleh bekas sebenarampalat penemuan atau penilaian termasuk perpustakaan perisian percuma yang komprehensif dan examples tersedia dengan pakej MCU. Penjana kod tidak tersedia.
Adakah mungkin untuk menukar 'data' PD secara dinamik dalam masa larian perisian? Cth jldtage dan permintaan/keupayaan semasa, pengguna/penyedia dan lain-lain?
Anda boleh menukar peranan kuasa secara dinamik (pengguna – SINK atau pembekal – SUMBER), permintaan kuasa (objek data kuasa) dan peranan data (hos atau peranti) terima kasih USB Type-C® PD. Fleksibiliti ini digambarkan dalam STM32H7RS USB Dwi Peranan Data dan Video Kuasa.
Adakah mungkin untuk menggunakan standard USB2.0 dan Penghantaran Kuasa (PD) untuk menerima lebih daripada 500 mA?
USB Type-C® PD mendayakan keupayaan berkuasa tinggi dan pengecasan pantas untuk peranti USB secara bebas daripada penghantaran data. Jadi, adalah mungkin untuk menerima lebih daripada 500 mA semasa menghantar dalam USB 2.x, 3.x.
Adakah kita mempunyai kemungkinan untuk membaca maklumat mengenai sumber atau peranti sink seperti PID/UID peranti USB?
USB PD memang menyokong pertukaran pelbagai jenis mesej, termasuk mesej lanjutan yang boleh membawa maklumat pengeluar terperinci. API USBPD_PE_SendExtendedMessage direka untuk memudahkan komunikasi ini, membenarkan peranti meminta dan menerima data seperti nama pengilang, nama produk, nombor siri, versi perisian tegar dan maklumat tersuai lain yang ditakrifkan oleh pengeluar.
Apabila menggunakan perisai X-NUCLEO-SNK1M1 yang termasuk TCPP01-M12, adakah X-CUBE-TCPP juga harus digunakan? Atau adakah X-CUBE-TCPP pilihan dalam kes ini?
Untuk memulakan penyelesaian USB Type-C® PD pada mod SINK, X-CUBE-TCPP disyorkan untuk memudahkan pelaksanaan kerana penyelesaian USB Type-C® PD STM32 perlu diurus. TCPP01-M12 ialah perlindungan optimum yang berkaitan.
Pada PCB USB, talian data USB (D+ dan D-) dialihkan sebagai isyarat pembezaan 90-Ohm. Adakah kesan CC1 dan CC2 mestilah isyarat 90-Ohms juga?
Talian CC ialah talian hujung tunggal dengan komunikasi frekuensi rendah 300 kbps. Impedans ciri tidak kritikal.
Bolehkah TCPP melindungi D+, D-?
TCPP tidak disesuaikan untuk melindungi talian D+/-. Untuk melindungi garisan D+/- USBLC6-2 Perlindungan ESD disyorkan atau ECMF2-40A100N6 Perlindungan ESD + penapis mod biasa jika frekuensi radio pada sistem.
Adakah pemandu HAL atau daftar dirangkumkan?
Pemandunya ialah HAL.
Bagaimanakah saya boleh memastikan bahawa STM32 mengendalikan rundingan kuasa dan pengurusan semasa dalam protokol PD dengan betul tanpa menulis kod?
Langkah pertama boleh menjadi satu siri ujian kebolehoperasian medan menggunakan peranti yang tersedia yang tersedia di pasaran. Untuk memahami tingkah laku penyelesaian, STM32CubeMonUCPD membenarkan pemantauan dan konfigurasi aplikasi STM32 USB Type-C® dan Power Delivery.
Langkah kedua boleh menjadi pensijilan dengan program pematuhan USB-IF (forum pelaksana USB) untuk mendapatkan nombor TID (Pengenalan Ujian) rasmi. Ia boleh dilakukan dalam bengkel pematuhan tajaan USB-IF atau dalam makmal ujian bebas yang dibenarkan.
Kod yang dijana oleh X-CUBE-TCPP sedia untuk diperakui dan penyelesaian dalam papan Nukleo/Penemuan/Penilaian telah pun diperakui.
Bagaimana untuk melaksanakan fungsi OVP bagi perlindungan port Jenis-C? Bolehkah margin ralat ditetapkan dalam 8%?
Ambang OVP ditetapkan oleh voltage jambatan pembahagi disambungkan pada pembanding dengan nilai jurang jalur tetap.
Input pembanding ialah VBUS_CTRL pada TCPP01-M12 dan Vsense pada TCPP03-M20. OVP VBUS ambang voltage boleh diubah HW mengikut voltage nisbah pembahagi.
Walau bagaimanapun, adalah disyorkan untuk menggunakan nisbah pembahagi yang dibentangkan pada X-NUCLEO-SNK1M1 atau X-NUCLEO-DRP1M1 mengikut vol maksimum yang disasarkantage.
Adakah tahap keterbukaan tinggi? Bolehkah menyesuaikan beberapa tugas tertentu?
Tindanan USB Type-C® PD tidak dibuka. Walau bagaimanapun, adalah mungkin untuk menyesuaikan semua input dan interaksi dengan penyelesaiannya. Juga, anda boleh merujuk kepada manual rujukan STM32 yang digunakan untuk melihat antara muka UCPD.
Apakah yang perlu kita perhatikan dalam reka bentuk litar perlindungan pelabuhan?
IC TCPP mesti diletakkan berdekatan dengan penyambung Jenis-C. Pengesyoran skematik disenaraikan dalam manual pengguna bagi X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, dan X-NUCLEO-DRP1M1. Untuk memastikan keteguhan ESD yang baik, saya akan mengesyorkan anda melihatnya Nota aplikasi tip susun atur ESD.
Hari ini, banyak IC satu cip dari China sedang diperkenalkan. Apakah advan khusustages menggunakan STM32?
Faedah utama penyelesaian ini muncul apabila menambah penyambung PD Jenis-C pada penyelesaian STM32 sedia ada. Kemudian, ia adalah kos efektif kerana vol rendahtage pengawal UCPD dibenamkan pada STM32, dan vol tinggitage kawalan / perlindungan dilakukan oleh TCPP.
Adakah terdapat penyelesaian disyorkan yang disediakan oleh ST dengan bekalan kuasa dan STM32-UCPD?
Mereka adalah bekas penuhample dengan a Penyesuai dwi port Penghantaran Kuasa USB Jenis-C berdasarkan penukar wang boleh atur cara STPD01. STM32G071RBT6 dan dua TCPP02-M18 digunakan untuk menyokong dua pengawal selia wang boleh atur cara STPD01PUR.
Apakah penyelesaian yang boleh digunakan untuk Sink (monitor kelas 60 W), input dan kuasa HDMI atau DP aplikasi?
STM32-UCPD + TCPP01-M12 boleh menyokong kuasa tenggelam sehingga 60 W. Untuk HDMI atau DP, mod ganti diperlukan dan ia boleh dilakukan oleh perisian.
Adakah produk ini bermakna mereka telah diuji untuk spesifikasi standard pematuhan USB-IF dan USB?
Kod yang dijana atau dicadangkan pada pakej perisian tegar telah diuji dan diperakui secara rasmi untuk beberapa konfigurasi HW utama. Sebagai bekasample, X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1 dan X-NUCLEO-DRP1M1 di atas NUCLEO telah diperakui secara rasmi dan ID ujian USB-IF ialah: TID5205, TID6408 dan TID7884.
Konfigurasi dan kod aplikasi
Bagaimanakah saya boleh membina PDO?
Membina objek data kuasa (PDO) dalam konteks Penghantaran Kuasa USB (PD) melibatkan penentuan keupayaan kuasa sumber atau sinki PD USB. Berikut ialah langkah untuk membuat dan mengkonfigurasi PDO:
- Kenal pasti jenis PDO:
- PDO bekalan tetap: Mentakrifkan vol tetaptage dan semasa
- PDO bekalan bateri: Mentakrifkan julat voltages dan kuasa maksimum
- PDO bekalan boleh ubah: Mentakrifkan julat voltages dan arus maksimum
- Bekalan Kuasa Boleh Aturcara (PPS) APDO: Membolehkan untuk vol boleh atur caratage dan semasa.
- Tentukan parameter:
- Voltage: Jilidtagtahap yang disediakan atau diminta oleh PDO
- Arus / kuasa: Arus (untuk PDO tetap dan berubah) atau kuasa (untuk PDO bateri) yang disediakan oleh PDO
atau permintaan.
- Gunakan STM32 Cube MonUCPD GUI:
- Langkah 1: Pastikan anda mempunyai versi terkini aplikasi STM32 Cube Mon UCPD
- Langkah 2: Sambungkan papan STM32G071-Disco anda ke mesin hos anda dan lancarkan aplikasi STM32 Cube Monitor-UCPD
- Langkah 3: Pilih papan anda dalam aplikasi
- Langkah 4: Navigasi ke halaman "konfigurasi port" dan klik pada tab "keupayaan sink" untuk melihat
senarai PDO semasa - Langkah 5: Ubah suai PDO sedia ada atau tambah PDO baharu dengan mengikut gesaan
- Langkah 6: Klik pada ikon "hantar ke sasaran" untuk menghantar senarai PDO yang dikemas kini ke papan anda
- Langkah 7: Klik pada ikon “simpan semua dalam sasaran” untuk menyimpan senarai PDO yang dikemas kini pada papan anda[*].
Berikut adalah bekasampbagaimana anda boleh menentukan PDO bekalan tetap dalam kod:
/* 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
Exampkonfigurasi
Untuk PDO bekalan tetap dengan 5 V dan 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
Pertimbangan tambahan:
- Pemilihan PDO dinamik: Anda boleh menukar kaedah pemilihan PDO secara dinamik pada masa jalan dengan mengubah suai pembolehubah USED_PDO_SEL_METHOD dalam usbpd_user_services.c file[*] .
- Penilaian keupayaan: Gunakan fungsi seperti USBPD_DPM_SNK_EvaluateCapabilities untuk menilai keupayaan yang diterima dan menyediakan mesej permintaan[*] .
Membina PDO melibatkan penentuan voltage dan parameter semasa (atau kuasa) dan mengkonfigurasinya menggunakan alatan seperti STM32CubeMonUCPD atau terus dalam kod. Dengan mengikuti langkah-langkah dan exampDengan syarat, anda boleh mencipta dan mengurus PDO dengan berkesan untuk aplikasi PD USB anda.
Adakah terdapat fungsi untuk skim keutamaan dengan lebih daripada satu sinki PD disambungkan?
Ya, terdapat fungsi yang menyokong skim keutamaan apabila lebih daripada satu sinki PD disambungkan. Ini amat berguna dalam senario di mana berbilang peranti disambungkan kepada satu sumber kuasa. Pengagihan kuasa perlu diuruskan berdasarkan keutamaan.
Skim keutamaan boleh diuruskan menggunakan fungsi USBPD_DPM_SNK_EvaluateCapabilities. Fungsi ini menilai keupayaan yang diterima daripada sumber PD dan menyediakan mesej permintaan berdasarkan keperluan dan keutamaan sinki. Apabila berurusan dengan berbilang sinki, anda boleh melaksanakan skim keutamaan dengan menetapkan tahap keutamaan kepada setiap sinki dan mengubah suai fungsi USBPD_DPM_SNK_EvaluateCapabilities untuk mempertimbangkan keutamaan ini.
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
Adakah wajib menggunakan DMA dengan LPUART untuk GUI?
Ya, adalah wajib untuk berkomunikasi melalui penyelesaian ST-LINK.
Adakah tetapan LPUART 7 bit untuk panjang perkataan betul?
Ya, betul.
Dalam alat STM32CubeMX - terdapat kotak semak "jimat kuasa UCPD tidak aktif - penarikan bateri mati yang tidak aktif." Apakah maksud kotak semak ini jika ia didayakan?
Apabila SOURCE, USB Type-C® memerlukan perintang tarik-up yang disambungkan kepada 3.3 V atau 5.0 V. Ia bertindak sebagai penjana sumber arus. Sumber semasa ini boleh dilumpuhkan apabila USB Type-C® PD tidak digunakan untuk mengurangkan penggunaan kuasa.
Adakah perlu menggunakan FreeRTOS untuk aplikasi STM32G0 dan USB PD? Sebarang rancangan untuk bukan FreeRTOS USB PD examples?
Ia tidak wajib untuk menggunakan FreeRTOS untuk aplikasi Penghantaran Kuasa USB (USB PD) pada mikropengawal STM32G0. Anda boleh melaksanakan USB PD tanpa RTOS dengan mengendalikan acara dan keadaan mesin dalam gelung utama atau melalui mengganggu rutin perkhidmatan. Walaupun terdapat permintaan untuk Penghantaran Kuasa USB examples tanpa RTOS. Pada masa ini tiada bekas bukan RTOSample tersedia. Tetapi beberapa bekas AzureRTOSample tersedia untuk siri STM32U5 dan H5.
Dalam demo STM32CubeMX membina aplikasi USB PD untuk STM32G0, adakah ketepatan HSI boleh diterima untuk aplikasi USB PD? Atau penggunaan kristal HSE luaran adalah wajib?
HSI menyediakan jam kernel untuk peranti UCPD, jadi tiada faedah menggunakan HSE. Selain itu, STM32G0 menyokong tanpa kristal untuk USB 2.0 dalam mod peranti, jadi HSE hanya diperlukan dalam mod hos USB 2.0.
Rajah 3. Tetapan semula UCPD dan jam

Adakah terdapat sebarang dokumentasi yang boleh saya rujuk untuk menyediakan CubeMX seperti yang telah anda jelaskan kemudian?
Dokumentasi tersedia dalam yang berikut Pautan Wiki.
Adakah STM 32 Cube Monitor mampu memantau masa nyata? Adakah pemantauan masa nyata boleh dilakukan dengan menyambungkan STM32 dan ST-LINK?
Ya, STM32CubeMonitor boleh melakukan pemantauan sebenar dengan menyambungkan STM32 dan ST-LINK.
Adakah VBUS voltage/fungsi ukuran semasa ditunjukkan pada skrin monitor yang tersedia secara asas dan lalai pada papan yang didayakan UCPD, atau adakah ia ciri papan NUCLEO tambahan?
Jilid tepattage pengukuran tersedia secara asli kerana VBUS voltage diperlukan oleh USB Type-C®.
Pengukuran arus yang tepat boleh dilakukan oleh TCPP02-M18 / TCPP03-M20 terima kasih kepada sisi tinggi amplifier dan shunt perintang juga digunakan untuk melakukan perlindungan lebih semasa.
Penjana kod aplikasi
Bolehkah CubeMX menjana projek berasaskan Azure RTOS dengan X-CUBE-TCPP dengan cara yang sama dengan FreeRTOS™? Bolehkah ia menjana kod menguruskan PD USB tanpa menggunakan FreeRTOS™? Adakah suite perisian ini memerlukan RTOS untuk beroperasi?
STM32CubeMX menjana kod terima kasih kepada pakej X-CUBE-TCPP menggunakan RTOS yang tersedia untuk MCU, FreeRTOS™ (untuk STM32G0 sebagai bekasample), atau AzureRTOS (untuk STM32H5 sebagai cthample).
Bolehkah X-CUBE-TCPP menjana kod untuk port dwi Jenis-C PD seperti papan STSW-2STPD01?
X-CUBE-TCPP boleh menjana kod untuk hanya satu port. Untuk melakukannya untuk dua port, dua projek yang dipisahkan perlu dijana tanpa pertindihan pada sumber STM32 dan dengan dua alamat I2C untuk TCPP02-M18 dan digabungkan.
Nasib baik, STSW-2STPD01 mempunyai pakej perisian tegar yang lengkap untuk kedua-dua port. Ia kemudiannya tidak perlu menjana kod.
Adakah alat reka bentuk ini berfungsi dengan semua mikropengawal dengan USB Type-C®?
Ya, X-CUBE-TCPP berfungsi dengan mana-mana STM32 yang membenamkan UCPD untuk semua sarung kuasa (SINK / SOURCE / Dwi Peranan). Ia berfungsi dengan mana-mana STM32 untuk 5 V Type-C SUMBER.
Jadual 1. Sejarah semakan dokumen
| tarikh | Semakan | Perubahan |
| 20-Jun-2025 | 1 | Keluaran awal. |
Notis Penting – Baca Dengan Berhati-hati
STMicroelectronics NV dan anak syarikatnya (“ST”) berhak untuk membuat perubahan, pembetulan, penambahbaikan, pengubahsuaian dan penambahbaikan pada produk ST dan/atau pada dokumen ini pada bila-bila masa tanpa notis. Pembeli hendaklah mendapatkan maklumat terkini berkaitan produk ST sebelum membuat pesanan. Produk ST dijual menurut terma dan syarat jualan ST yang ada pada masa penerimaan pesanan.
Pembeli bertanggungjawab sepenuhnya untuk pilihan, pemilihan dan penggunaan produk ST dan ST tidak bertanggungjawab untuk bantuan permohonan atau reka bentuk produk pembeli.
Tiada lesen, nyata atau tersirat, kepada mana-mana hak harta intelek diberikan oleh ST di sini.
Jualan semula produk ST dengan peruntukan yang berbeza daripada maklumat yang dinyatakan di sini akan membatalkan sebarang waranti yang diberikan oleh ST untuk produk tersebut.
ST dan logo ST adalah tanda dagangan ST. Untuk maklumat tambahan tentang tanda dagangan ST, rujuk kepada www.st.com/trademarks. Semua nama produk atau perkhidmatan lain adalah hak milik pemilik masing-masing.
Maklumat dalam dokumen ini menggantikan dan menggantikan maklumat yang dibekalkan sebelum ini dalam mana-mana versi terdahulu dokumen ini.
© 2025 STMicroelectronics – Hak cipta terpelihara

Dokumen / Sumber
![]() |
Penghantaran Kuasa USB Jenis-C ST STM32 [pdf] Manual Pengguna TN1592, UM2552, STEVAL-2STPD01, STM32 Penghantaran Kuasa USB Jenis-C, STM32, Penghantaran Kuasa USB Jenis-C, Penghantaran Kuasa Jenis-C, Penghantaran Kuasa, Penghantaran |
