Pengiriman Daya USB Tipe-C STM32

Perkenalan
Dokumen ini berisi daftar pertanyaan yang sering diajukan (FAQ) tentang STM32 USB Type-C®, dan Power Delivery.
Pengiriman Daya USB Type-C®
Bisakah USB Type-C® PD digunakan untuk mengirimkan data? (Tidak menggunakan fitur transfer data USB berkecepatan tinggi)
Meskipun USB Type-C® PD sendiri tidak dirancang untuk transfer data berkecepatan tinggi, ia dapat digunakan dengan protokol lain dan mode alternatif serta mengelola transmisi data dasar.
Apa penggunaan praktis modul VDM UCPD?
Pesan yang ditentukan vendor (VDM) dalam USB Type-C® Power Delivery menyediakan mekanisme fleksibel untuk memperluas fungsionalitas USB Type-C® PD di luar negosiasi daya standar. VDM memungkinkan identifikasi perangkat, mode alternatif, pembaruan firmware, perintah khusus, dan debugging. Dengan menerapkan VDM, vendor dapat menciptakan fitur dan protokol khusus sekaligus mempertahankan kompatibilitas dengan spesifikasi USB Type-C® PD.
STM32CubeMX perlu dikonfigurasi dengan parameter tertentu. Di mana parameter tersebut tersedia?
Pembaruan terbaru mengubah informasi tampilan menjadi lebih ramah pengguna, sekarang antarmuka hanya meminta volumetage dan arus yang diinginkan. Namun, parameter ini dapat ditemukan dalam dokumentasi, Anda dapat melihat tabel referensi cepat di AN5418.
Gambar 1Detail spesifikasi (Tabel 6-14 dalam spesifikasi Pengiriman Daya Bus Serial Universal)

Gambar 2 menjelaskan nilai yang diterapkan 0x02019096.
Gambar 2. Dekoding PDO terperinci

Untuk detail lebih lanjut tentang definisi PDO, lihat bagian POWER_IF di UM2552.
Berapa arus keluaran maksimum antarmuka USB?
Arus keluaran maksimum yang diizinkan oleh standar USB Type-C® PD adalah 5 A dengan kabel 5 A khusus. Tanpa kabel khusus, arus keluaran maksimum adalah 3 A.
Apakah 'Mode peran ganda' ini berarti dapat menyalurkan daya dan mengisi daya secara terbalik?
Ya, DRP (dual role port) dapat disuplai (sink), atau dapat disuplai (source). Umumnya digunakan pada perangkat bertenaga baterai.
Pengontrol dan perlindungan Pengiriman Daya STM32
Apakah dukungan MCU hanya standar PD atau QC juga?
Mikrokontroler STM32 terutama mendukung standar USB Power Delivery (PD), sebuah protokol fleksibel dan banyak digunakan untuk Power Delivery melalui koneksi USB Type-C®. Dukungan bawaan untuk Quick Charge (QC) tidak disediakan oleh mikrokontroler STM32 maupun tumpukan USB PD dari STMicroelectronics. Jika dukungan Quick Charge diperlukan, IC pengontrol QC khusus sebaiknya digunakan bersama mikrokontroler STM32.
Mungkinkah mengimplementasikan algoritma rektifikasi sinkron dalam paket ini? Bisakah algoritma ini mengelola beberapa keluaran dan peran pengontrol?
Implementasi algoritma rektifikasi sinkron dengan beberapa keluaran dan peran pengontrol dapat dilakukan dengan mikrokontroler STM32. Dengan mengonfigurasi periferal PWM dan ADC serta mengembangkan algoritma kontrol, konversi daya yang efisien dan pengelolaan beberapa keluaran dapat dicapai. Selain itu, penggunaan protokol komunikasi seperti I2C atau SPI dapat mengoordinasikan pengoperasian beberapa perangkat dalam konfigurasi pengontrol-target. Sebagai contoh:ample, STEVAL-2STPD01 dengan STM32G071RBT6 tunggal yang menyematkan dua pengontrol UCPD dapat mengelola dua port Pengiriman Daya Tipe-C 60 W Tipe-C.
Apakah ada TCPP untuk VBUS > 20 V? Apakah produk ini berlaku untuk EPR?
Seri TCPP0 diberi nilai hingga 20 V VBUS voltage SPR (Rentang Daya Standar).
Seri mikrokontroler STM32 mana yang mendukung USB Type-C® PD?
Periferal UCPD untuk mengelola USB Type-C® PD tertanam pada seri STM32 berikut: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6, dan STM32MP2. Periferal ini memberikan 961 P/N pada saat dokumen ditulis.
Bagaimana cara membuat MCU STM32 berfungsi sebagai perangkat serial USB sesuai kelas USB CDC? Apakah prosedur yang sama atau serupa membantu saya tanpa kode?
Solusi komunikasi melalui USB didukung oleh ex nyataampkumpulan alat penemuan atau evaluasi termasuk perpustakaan perangkat lunak bebas yang komprehensif dan contohampFile tersedia dengan paket MCU. Generator kode tidak tersedia.
Apakah mungkin untuk mengubah 'data' PD secara dinamis saat perangkat lunak dijalankan? Misalnya vol.tage dan tuntutan/kemampuan saat ini, konsumen/penyedia dll.?
Dimungkinkan untuk mengubah peran daya secara dinamis (konsumen – SINK atau penyedia – SUMBER), permintaan daya (objek data daya) dan peran data (host atau perangkat) berkat USB Type-C® PD. Fleksibilitas ini diilustrasikan dalam STM32H7RS USB Peran Ganda Data dan Daya video.
Apakah mungkin menggunakan standar USB2.0 dan Power Delivery (PD) untuk menerima lebih dari 500 mA?
USB Type-C® PD memungkinkan kemampuan pengisian daya tinggi dan cepat untuk perangkat USB tanpa perlu mentransmisikan data. Dengan demikian, Anda dapat menerima lebih dari 500 mA saat mentransmisikan melalui USB 2.x dan 3.x.
Apakah kami memiliki kemungkinan untuk membaca informasi pada perangkat sumber atau penerima seperti PID/UID perangkat USB?
USB PD mendukung pertukaran berbagai jenis pesan, termasuk pesan lanjutan yang dapat memuat informasi detail produsen. API USBPD_PE_SendExtendedMessage dirancang untuk memfasilitasi komunikasi ini, memungkinkan perangkat untuk meminta dan menerima data seperti nama produsen, nama produk, nomor seri, versi firmware, dan informasi khusus lainnya yang ditentukan oleh produsen.
Jika menggunakan shield X-NUCLEO-SNK1M1 yang mencakup TCPP01-M12, apakah X-CUBE-TCPP juga harus digunakan? Atau, apakah X-CUBE-TCPP opsional dalam kasus ini?
Untuk memulai solusi USB Type-C® PD pada mode SINK, X-CUBE-TCPP direkomendasikan untuk memudahkan implementasi karena solusi USB Type-C® PD STM32 perlu dikelola. TCPP01-M12 adalah perlindungan optimal yang terkait.
Pada PCB USB, jalur data USB (D+ dan D-) dirutekan sebagai sinyal diferensial 90 Ohm. Apakah jalur CC1 dan CC2 juga harus berupa sinyal 90 Ohm?
Saluran CC adalah saluran single-ended dengan komunikasi frekuensi rendah 300 kbps. Impedansi karakteristik tidak terlalu penting.
Bisakah TCPP melindungi D+, D-?
TCPP tidak diadaptasi untuk melindungi jalur D+/-. Untuk melindungi jalur D+/- USBLC6-2 Perlindungan ESD direkomendasikan atau ECMF2-40A100N6 Perlindungan ESD + filter mode umum jika frekuensi radio pada sistem.
Apakah driver HAL atau register dienkapsulasi?
Pengemudinya adalah HAL.
Bagaimana saya dapat memastikan bahwa STM32 menangani negosiasi daya dan manajemen arus dalam protokol PD dengan benar tanpa menulis kode?
Langkah pertama dapat berupa serangkaian uji interoperabilitas lapangan menggunakan perangkat yang tersedia di pasaran. Untuk memahami perilaku solusi, STM32CubeMonUCPD memungkinkan pemantauan dan konfigurasi aplikasi STM32 USB Type-C® dan Power Delivery.
Langkah kedua adalah sertifikasi dengan program kepatuhan USB-IF (USB implementer forum) untuk mendapatkan nomor TID (Test Identification) resmi. Sertifikasi ini dapat dilakukan di lokakarya kepatuhan yang disponsori USB-IF atau di laboratorium uji independen resmi.
Kode yang dihasilkan oleh X-CUBE-TCPP siap disertifikasi dan solusi di papan Nucleo/Discovery/Evaluation telah disertifikasi.
Bagaimana cara menerapkan fungsi OVP untuk perlindungan port Tipe-C? Bisakah margin kesalahan diatur hingga 8%?
Ambang batas OVP ditetapkan oleh voltagjembatan pembagi yang terhubung pada pembanding dengan nilai celah pita tetap.
Input pembanding adalah VBUS_CTRL pada TCPP01-M12 dan Vsense pada TCPP03-M20. Ambang batas OVP VBUS voltage dapat diubah HW sesuai dengan voltage rasio pembagi.
Namun, disarankan untuk menggunakan rasio pembagi yang disajikan pada X-NUCLEO-SNK1M1 atau X-NUCLEO-DRP1M1 sesuai dengan target volume maksimum.tage.
Apakah tingkat keterbukaannya tinggi? Bisakah saya menyesuaikan beberapa tugas tertentu?
Tumpukan USB Type-C® PD tidak terbuka. Namun, Anda dapat menyesuaikan semua input dan interaksinya dengan solusi ini. Anda juga dapat merujuk ke manual referensi STM32 yang digunakan untuk melihat antarmuka UCPD.
Apa saja yang perlu diperhatikan dalam perancangan rangkaian proteksi port?
IC TCPP harus ditempatkan dekat dengan konektor Tipe-C. Rekomendasi skema tercantum dalam manual pengguna X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, Dan X-NUCLEO-DRP1M1Untuk memastikan ketahanan ESD yang baik, saya sarankan untuk melihat Catatan aplikasi tips tata letak ESD.
Saat ini, banyak IC satu chip dari Tiongkok yang diperkenalkan. Apa saja keunggulan spesifiknya?tagpenggunaan STM32?
Manfaat utama solusi ini terlihat ketika menambahkan konektor PD Tipe-C ke solusi STM32 yang sudah ada. Selain itu, solusi ini hemat biaya karena volume rendah.tagPengontrol UCPD tertanam pada STM32, dan volume tinggitagKontrol/perlindungan dilakukan oleh TCPP.
Apakah ada solusi yang direkomendasikan oleh ST dengan catu daya dan STM32-UCPD?
Mereka adalah mantan penuhample dengan Adaptor pengiriman daya USB Type-C port ganda Berdasarkan konverter buck terprogram STPD01. STM32G071RBT6 dan dua TCPP02-M18 digunakan untuk mendukung dua regulator buck terprogram STPD01PUR.
Apa solusi yang berlaku untuk Wastafel (monitor kelas 60 W), aplikasi input dan daya HDMI atau DP?
STM32-UCPD + TCPP01-M12 dapat mendukung daya sinking hingga 60 W. Untuk HDMI atau DP, diperlukan mode alternatif, dan hal ini dapat dilakukan melalui perangkat lunak.
Apakah produk ini berarti telah diuji untuk spesifikasi standar USB-IF dan kepatuhan USB?
Kode yang dihasilkan atau diusulkan pada paket firmware telah diuji dan disertifikasi secara resmi untuk beberapa konfigurasi perangkat keras utama. Sebagai contoh:ample, X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, dan X-NUCLEO-DRP1M1 di atas NUCLEO telah disertifikasi secara resmi dan ID pengujian USB-IF adalah: TID5205, TID6408, dan TID7884.
Konfigurasi dan kode aplikasi
Bagaimana cara membangun PDO?
Membangun objek data daya (PDO) dalam konteks Pengiriman Daya USB (PD) melibatkan pendefinisian kemampuan daya sumber atau penerima USB PD. Berikut langkah-langkah untuk membuat dan mengonfigurasi PDO:
- Identifikasi jenis PDO:
- Pasokan tetap PDO: Menentukan vol tetaptage dan saat ini
- Pasokan baterai PDO: Menentukan rentang voltages dan daya maksimum
- Pasokan variabel PDO: Menentukan rentang voltages dan arus maksimum
- Catu Daya Terprogram (PPS) APDO: Memungkinkan vol yang dapat diprogramtage dan saat ini.
- Tentukan parameternya:
- Jil.tage: volumetagtingkat yang disediakan atau diminta oleh PDO
- Arus / daya:Arus (untuk PDO tetap dan variabel) atau daya (untuk PDO baterai) yang disediakan oleh PDO
atau permintaan.
- Gunakan GUI STM32 Cube MonUCPD:
- Langkah 1: Pastikan Anda memiliki versi terbaru aplikasi STM32 Cube Mon UCPD
- Langkah 2:Hubungkan papan STM32G071-Disco Anda ke mesin host Anda dan luncurkan aplikasi STM32 Cube Monitor-UCPD
- Langkah 3: Pilih papan Anda di aplikasi
- Langkah 4: Arahkan ke halaman “konfigurasi port” dan klik pada tab “kemampuan sink” untuk melihat
daftar PDO saat ini - Langkah 5: Ubah PDO yang ada atau tambahkan PDO baru dengan mengikuti petunjuknya
- Langkah 6: Klik ikon “kirim ke target” untuk mengirim daftar PDO yang diperbarui ke dewan Anda
- Langkah 7: Klik ikon “simpan semua di target” untuk menyimpan daftar PDO yang diperbarui ke papan Anda[*].
Ini adalah mantanampcontoh bagaimana Anda dapat mendefinisikan PDO pasokan tetap dalam kode:
/* 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 le
Untuk PDO pasokan 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 dinamis: Anda dapat mengubah metode pemilihan PDO secara dinamis saat runtime dengan memodifikasi variabel USED_PDO_SEL_METHOD di usbpd_user_services.c file[*] .
- Evaluasi kemampuan: Gunakan fungsi seperti USBPD_DPM_SNK_EvaluateCapabilities untuk mengevaluasi kemampuan yang diterima dan menyiapkan pesan permintaan[*].
Membangun PDO melibatkan pendefinisian voltage dan parameter arus (atau daya) serta mengonfigurasinya menggunakan alat seperti STM32CubeMonUCPD atau langsung dalam kode. Dengan mengikuti langkah-langkah dan contohampyang disediakan, Anda dapat membuat dan mengelola PDO secara efektif untuk aplikasi USB PD Anda.
Apakah ada fungsi untuk skema prioritas dengan lebih dari satu PD-sink yang terhubung?
Ya, terdapat fungsi yang mendukung skema prioritas ketika lebih dari satu PD-sink terhubung. Hal ini khususnya berguna dalam skenario di mana beberapa perangkat terhubung ke satu sumber daya. Distribusi daya perlu dikelola berdasarkan prioritas.
Skema prioritas dapat dikelola menggunakan fungsi USBPD_DPM_SNK_EvaluateCapabilities. Fungsi ini mengevaluasi kapabilitas yang diterima dari sumber PD dan menyiapkan pesan permintaan berdasarkan persyaratan dan prioritas sink. Saat menangani beberapa sink, Anda dapat menerapkan skema prioritas dengan menetapkan tingkat prioritas untuk setiap sink dan memodifikasi fungsi USBPD_DPM_SNK_EvaluateCapabilities untuk mempertimbangkan prioritas tersebut.
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
Apakah wajib menggunakan DMA dengan LPUART untuk GUI?
Ya, wajib untuk berkomunikasi melalui solusi ST-LINK.
Apakah pengaturan LPUART 7 bit untuk panjang kata sudah benar?
Ya, itu benar.
Di alat STM32CubeMX, terdapat kotak centang "hemat daya UCPD nonaktif - nonaktifkan baterai mati". Apa arti kotak centang ini jika diaktifkan?
Saat menggunakan SOURCE, USB Type-C® memerlukan resistor pull-up yang terhubung ke tegangan 3.3 V atau 5.0 V. Resistor ini berfungsi sebagai generator sumber arus. Sumber arus ini dapat dinonaktifkan saat USB Type-C® PD tidak digunakan untuk mengurangi konsumsi daya.
Apakah perlu menggunakan FreeRTOS untuk aplikasi STM32G0 dan USB PD? Adakah rencana untuk USB PD non-FreeRTOS?ampsedikit?
Penggunaan FreeRTOS untuk aplikasi USB Power Delivery (USB PD) pada mikrokontroler STM32G0 tidak wajib. Anda dapat mengimplementasikan USB PD tanpa RTOS dengan menangani peristiwa dan mesin status di loop utama atau dengan menginterupsi rutin layanan. Meskipun ada permintaan untuk USB Power Delivery,amples tanpa RTOS. Saat ini tidak ada non-RTOS example tersedia. Namun beberapa AzureRTOS example tersedia untuk seri STM32U5 dan H5.
Dalam demo STM32CubeMX yang membangun aplikasi USB PD untuk STM32G0, apakah akurasi HSI dapat diterima untuk aplikasi USB PD? Atau penggunaan kristal HSE eksternal wajib?
HSI menyediakan clock kernel untuk periferal UCPD, sehingga tidak ada manfaat menggunakan HSE. Selain itu, STM32G0 mendukung crystal-less untuk USB 2.0 dalam mode perangkat, sehingga HSE hanya diperlukan dalam mode host USB 2.0.
Gambar 3. Reset dan jam UCPD

Apakah ada dokumentasi yang dapat saya rujuk untuk menyiapkan CubeMX seperti yang Anda jelaskan nanti?
Dokumentasinya tersedia dalam bentuk berikut Tautan wiki.
Apakah STM 32 Cube Monitor mampu melakukan pemantauan secara real-time? Apakah pemantauan secara real-time dimungkinkan dengan menghubungkan STM32 dan ST-LINK?
Ya, STM32CubeMonitor dapat melakukan pemantauan nyata dengan menghubungkan STM32 dan ST-LINK.
Apakah VBUS vol.tagFungsi pengukuran e/arus yang ditunjukkan pada layar monitor tersedia secara dasar dan default pada papan yang mendukung UCPD, atau apakah ini merupakan fitur papan NUCLEO yang ditambahkan?
Jilid akurattagPengukuran e tersedia secara asli karena VBUS voltage diperlukan oleh USB Type-C®
Pengukuran arus yang akurat dapat dilakukan oleh TCPP02-M18 / TCPP03-M20 berkat sisi yang tinggi amppenguat dan resistor shunt juga digunakan untuk melakukan proteksi arus berlebih.
Generator kode aplikasi
Bisakah CubeMX menghasilkan proyek berbasis Azure RTOS dengan X-CUBE-TCPP dengan cara yang sama seperti FreeRTOS™? Bisakah CubeMX menghasilkan kode yang mengelola USB PD tanpa menggunakan FreeRTOS™? Apakah rangkaian perangkat lunak ini memerlukan RTOS untuk beroperasi?
STM32CubeMX menghasilkan kode berkat paket X-CUBE-TCPP menggunakan RTOS yang tersedia untuk MCU, FreeRTOS™ (untuk STM32G0 sebagai example), atau AzureRTOS (untuk STM32H5 sebagai contohampsaya).
Dapatkah X-CUBE-TCPP menghasilkan kode untuk port PD Tipe-C ganda seperti papan STSW-2STPD01?
X-CUBE-TCPP hanya dapat menghasilkan kode untuk satu port. Untuk melakukannya untuk dua port, dua proyek terpisah harus dihasilkan tanpa tumpang tindih pada sumber daya STM32 dan dengan dua alamat I2C untuk TCPP02-M18, lalu digabungkan.
Untung, STSW-2STPD01 memiliki paket firmware lengkap untuk kedua port tersebut. Dengan demikian, tidak perlu lagi membuat kode.
Apakah alat desain ini bekerja dengan semua mikrokontroler dengan USB Type-C®?
Ya, X-CUBE-TCPP berfungsi dengan STM32 apa pun yang memiliki UCPD untuk semua kasus daya (SINK / SOURCE / Dual Role). Kompatibel dengan STM32 apa pun untuk SOURCE Tipe-C 5 V.
Tabel 1. Riwayat revisi dokumen
| Tanggal | Revisi | Perubahan |
| 20 Juni 2025 | 1 | Rilis awal. |
Pemberitahuan Penting – Baca dengan Saksama
STMicroelectronics NV dan anak perusahaannya (“ST”) berhak melakukan perubahan, koreksi, penyempurnaan, modifikasi, dan perbaikan pada produk ST dan/atau dokumen ini kapan saja tanpa pemberitahuan. Pembeli harus memperoleh informasi relevan terkini tentang produk ST sebelum melakukan pemesanan. Produk ST dijual sesuai dengan syarat dan ketentuan penjualan ST yang berlaku pada saat konfirmasi pemesanan.
Pembeli bertanggung jawab penuh atas pilihan, pemilihan, dan penggunaan produk ST dan ST tidak bertanggung jawab atas bantuan aplikasi atau desain produk pembeli.
Tidak ada lisensi, tersurat maupun tersirat, terhadap hak kekayaan intelektual apa pun yang diberikan oleh ST di sini.
Penjualan kembali produk ST dengan ketentuan yang berbeda dari informasi yang ditetapkan di sini akan membatalkan garansi apa pun yang diberikan oleh ST untuk produk tersebut.
ST dan logo ST adalah merek dagang ST. Untuk informasi tambahan tentang merek dagang ST, lihat www.st.com/merek dagangSemua nama produk atau layanan lainnya adalah milik pemiliknya masing-masing.
Informasi dalam dokumen ini menggantikan dan mengganti informasi yang sebelumnya diberikan dalam versi dokumen ini sebelumnya.
© 2025 STMicroelectronics – Semua hak dilindungi undang-undang

Dokumen / Sumber Daya
![]() |
Pengiriman Daya USB Tipe-C ST STM32 [Bahasa Indonesia:] Panduan Pengguna TN1592, UM2552, STEVAL-2STPD01, STM32 Pengiriman Daya USB Tipe-C, STM32, Pengiriman Daya USB Tipe-C, Pengiriman Daya Tipe-C, Pengiriman Daya, Pengiriman |
