STM32 USB Type-C 電力供給

STM32 USB Type-C 電力供給

導入

このドキュメントには、STM32 USB Type-C® および Power Delivery に関するよくある質問 (FAQ) の一覧が記載されています。

USB Type-C® 電力供給

USB Type-C® PDを使用してデータを転送できますか?(USB高速データ転送機能は使用しません)

USB Type-C® PD 自体は高速データ転送用に設計されていませんが、他のプロトコルや代替モードと組み合わせて使用でき、基本的なデータ転送を管理します。

VDM UCPD モジュールの実際的な使用法は何ですか?

USB Type-C® Power Deliveryにおけるベンダー定義メッセージ(VDM)は、標準的な電力ネゴシエーションを超えてUSB Type-C® PDの機能を拡張するための柔軟なメカニズムを提供します。VDMは、デバイス識別、代替モード、ファームウェアアップデート、カスタムコマンド、デバッグを可能にします。VDMを実装することで、ベンダーはUSB Type-C® PD仕様との互換性を維持しながら、独自の機能やプロトコルを開発できます。

STM32CubeMX は特定のパラメータを使用して構成する必要がありますが、それらはどこで入手できますか?

最新のアップデートでは、表示情報がよりユーザーフレンドリーに変更され、インターフェースは単にボリュームを要求するようになりました。tageと希望電流。ただし、これらのパラメータはドキュメントに記載されており、AN5418のクイックリファレンステーブルを参照できます。

図1仕様詳細(ユニバーサルシリアルバス電力供給仕様の表6-14)
USB Type-C® 電力供給

図2 適用された値 0x02019096 について説明します。
図2. PDOデコードの詳細
USB Type-C® 電力供給

PDO 定義の詳細については、UM2552 の POWER_IF セクションを参照してください。

USB インターフェースの最大出力電流はどれくらいですか?

USB Type-C® PD規格で許容される最大出力電流は、専用の5Aケーブルを使用した場合5Aです。専用のケーブルを使用しない場合、最大出力電流は3Aです。

この「デュアルロールモード」とは、逆に電力供給と充電が行えることを意味しますか?

はい、DRP(デュアルロールポート)は、シンク(供給)とソース(供給)の両方に対応しています。バッテリー駆動のデバイスでよく使用されます。

STM32 Power Deliveryコントローラと保護

MCU は PD 標準のみをサポートしますか、それとも QC もサポートしますか?

STM32マイクロコントローラは、主にUSB Power Delivery(PD)規格をサポートしています。これは、USB Type-C®接続における電力供給のための柔軟で広く採用されているプロトコルです。STM32マイクロコントローラおよびSTMicroelectronicsのUSB PDスタックは、Quick Charge(QC)のネイティブサポートを提供していません。Quick Chargeのサポートが必要な場合は、STM32マイクロコントローラと併用して専用のQCコントローラICを使用する必要があります。

パッケージに同期整流アルゴリズムを実装することは可能ですか?複数の出力とコントローラーの役割を管理できますか?

STM32マイクロコントローラでは、複数の出力とコントローラ機能を備えた同期整流アルゴリズムを実装できます。PWMおよびADCペリフェラルを設定し、制御アルゴリズムを開発することで、効率的な電力変換を実現し、複数の出力を管理することができます。さらに、I2CやSPIなどの通信プロトコルを使用することで、コントローラとターゲット間の構成において複数のデバイスの動作を調整できます。例えば、ampたとえば、2 つの UCPD コントローラーを組み込んだ 01 つの STM32G071RBT6 を搭載した STEVAL-60STPDXNUMX は、XNUMX つの Type-C XNUMX W Type-C Power Delivery ポートを管理できます。

VBUS > 20 V用のTCPPはありますか?これらの製品はEPRに適用されますか?

TCPP0シリーズは最大20 V VBUS電圧まで定格されていますtage SPR(標準出力範囲)。

どの STM32 マイクロコントローラ シリーズが USB Type-C® PD をサポートしていますか?

USB Type-C® PDを管理するUCPDペリフェラルは、以下のSTM32シリーズに組み込まれています:STM32G0、STM32G4、STM32L5、STM32U5、STM32H5、STM32H7R/S、STM32N6、およびSTM32MP2。本稿執筆時点でのP/Nは961です。

STM32 MCUをUSB CDCクラスに準拠したUSBシリアルデバイスとして動作させるにはどうすればいいでしょうか? 同じ手順、あるいは同様の手順でノーコード開発も可能ですか?

USB経由の通信ソリューションは、実際の例によってサポートされています。amp包括的なフリーソフトウェアライブラリやexを含む発見または評価ツールのファイルampMCUパッケージで利用可能なファイル。コードジェネレーターは利用できません。

ソフトウェア実行時にPDの「データ」を動的に変更することは可能ですか?例:voltageおよび現在の需要/能力、 消費者/プロバイダーなど?

USB Type-C® PDにより、電力の役割(消費者 - シンクまたはプロバイダー - ソース)、電力需要(電力データオブジェクト)、データの役割(ホストまたはデバイス)を動的に変更することが可能です。この柔軟性は、次の図に示されています。 STM32H7RS USB デュアルロール データおよび電源ビデオ.

USB2.0規格とPower Delivery(PD)を使用して500mAを超える電流を受け取ることは可能ですか?

USB Type-C® PDは、データ転送とは独立してUSBデバイスに高出力・急速充電機能を提供します。そのため、USB 500.x、2.xでデータ転送しながら3mA以上の電流を受信できます。

USB デバイスの PID/UID などのソース デバイスまたはシンク デバイスの情報を読み取ることはできますか?

USB PDは、メーカーの詳細情報を含む拡張メッセージを含む、様々なタイプのメッセージの交換をサポートしています。USBPD_PE_SendExtendedMessage APIは、この通信を容易にするために設計されており、デバイスはメーカー名、製品名、シリアル番号、ファームウェアバージョン、その他メーカーが定義したカスタム情報などのデータを要求および受信できます。

TCPP1-M1を搭載したX-NUCLEO-SNK01M12シールドを使用する場合、X-CUBE-TCPPも使用する必要がありますか?それとも、この場合、X-CUBE-TCPPはオプションですか?

USB Type-C® PDソリューションをSINKモードで起動するには、STM32 USB Type-C® PDソリューションの管理が必要となるため、実装を容易にするためにX-CUBE-TCPPの使用をお勧めします。TCPP01-M12は、これに関連する最適な保護機能です。

USB PCBでは、USBデータライン(D+とD-)は90Ωの差動信号として配線されています。CC1とCC2のトレースも同様に90Ωの信号にする必要がありますか?

CC回線は、300 kbpsの低周波通信を行うシングルエンド回線です。特性インピーダンスは重要ではありません。

TCPP は D+、D- を保護できますか?

TCPPはD+/-ラインを保護するのに適していません。D+/-ラインを保護するには USBLC6-2 ESD保護が推奨されるか、 ECMF2-40A100N6 システム上に無線周波数がある場合は、ESD 保護 + コモンモード フィルター。

ドライバー HAL またはレジスタはカプセル化されていますか?

ドライバーはHALです。

コードを書かずに、STM32 が PD プロトコルで電力ネゴシエーションと電流管理を正しく処理することを確認するにはどうすればよいですか?

最初のステップとして、市販のデバイスを用いた一連のフィールド相互運用性テストを実施できます。ソリューションの動作を理解するために、STM32CubeMonUCPD を使用すると、STM32 の USB Type-C® および Power Delivery アプリケーションの監視と設定が可能です。

次のステップとして、USB-IF(USBインプリメンターフォーラム)コンプライアンスプログラムによる認証を取得し、公式のTID(テストID)番号を取得することができます。これは、USB-IFが主催するコンプライアンスワークショップ、または認定された独立テストラボで実施できます。

X-CUBE-TCPP によって生成されたコードは認証の準備ができており、Nucleo/Discovery/Evaluation ボードのソリューションはすでに認証されています。

Type-Cポート保護のOVP機能はどのように実装すればいいですか?誤差は8%以内に設定できますか?

OVP閾値はボリュームによって設定されるtag固定バンドギャップ値を持つコンパレータに接続された分周ブリッジ。
コンパレータ入力はTCPP01-M12のVBUS_CTRLとTCPP03-M20のVsenseです。OVP VBUS閾値電圧tagボリュームに応じてHWを変更できますtage 分周比。
ただし、目標とする最大容量に応じて、X-NUCLEO-SNK1M1またはX-NUCLEO-DRP1M1に示されている分割比を使用することをお勧めします。tage.

オープン度は高いですか?特定のタスクの一部をカスタマイズできますか?

USB Type-C® PDスタックは非公開です。ただし、すべての入力とソリューションとの連携をカスタマイズすることは可能です。また、STM32のリファレンスマニュアルを参照して、UCPDインターフェースを確認することもできます。

ポート保護回路の設計では何に注意すべきでしょうか?

TCPP ICはType-Cコネクタの近くに配置する必要があります。回路図の推奨事項は、以下のユーザーマニュアルに記載されています。 X-NUCLEO-SNK1M1、X-NUCLEO-SRC1M1、 そして X-NUCLEO-DRP1M1優れたESD耐性を保証するために、以下をご覧になることをお勧めします。 ESDレイアウトのヒントアプリケーションノート.

最近、中国製のワンチップICが数多く導入されていますが、その具体的な利点は何でしょうか?tagSTM32 を使用する利点は何ですか?

このソリューションの主なメリットは、既存のSTM32ソリューションにType-C PDコネクタを追加することで実現します。また、低電圧のためコスト効率に優れています。tagUCPDコントローラはSTM32に組み込まれており、高電圧tag制御/保護は TCPP によって行われます。

ST が電源と STM32-UCPD とともに提供している推奨ソリューションはありますか?

彼らは完全な元ampルとル USB Type-C Power Delivery デュアルポートアダプター STPD01プログラマブル降圧コンバータをベースにしています。STM32G071RBT6と2つのTCPP02-M18を使用して、2つのSTPD01PURプログラマブル降圧レギュレータをサポートします。

シンク(60 W クラスのモニター)、アプリケーション HDMI または DP 入力および電源に適用可能なソリューションは何ですか?

STM32-UCPD + TCPP01-M12 は、最大 60 W のシンク電力をサポートできます。HDMI または DP の場合、代替モードが必要ですが、これはソフトウェアで実行できます。

これらの製品は、USB-IF の標準仕様および USB コンプライアンスに関してテスト済みであることを意味しますか?

ファームウェアパッケージで生成または提案されたコードは、いくつかの主要なハードウェア構成でテストされ、公式に認定されています。例:ample、NUCLEO 上の X-NUCLEO-SNK1M1、X-NUCLEO-SRC1M1、および X-NUCLEO-DRP1M1 は正式に認定されており、USB-IF テスト ID は TID5205、TID6408、および TID7884 です。

構成とアプリケーションコード

PDO を構築するにはどうすればよいですか?

USB Power Delivery (PD) のコンテキストで電力データオブジェクト (PDO) を構築するには、USB PD ソースまたはシンクの電力供給能力を定義する必要があります。PDO の作成と設定の手順は以下のとおりです。

  1. PDOの種類を特定する:
    • 固定供給PDO: 固定ボリュームを定義しますtageと現在の
    • バッテリー供給PDO: ボリュームの範囲を定義しますtagesと最大出力
    • 変動供給PDO: ボリュームの範囲を定義しますtagesと最大電流
    • プログラマブル電源(PPS)APDO: プログラム可能なボリュームが可能tage と現在。
  2. パラメータを定義します。
    • 巻tage: 巻tagPDOが提供または要求するレベル
    • 電流/電力: PDO が提供する電流(固定および可変 PDO の場合)または電力(バッテリー PDO の場合)
      またはリクエストします。
  3. STM32 Cube MonUCPD GUI を使用します。
    • ステップ1: STM32 Cube Mon UCPDアプリケーションの最新バージョンがインストールされていることを確認してください
    • ステップ2STM32G071-Discoボードをホストマシンに接続し、STM32 Cube Monitor-UCPDアプリケーションを起動します。
    • ステップ3: アプリケーションでボードを選択してください
    • ステップ4: 「ポート設定」ページに移動し、「シンク機能」タブをクリックして、
      現在のPDOリスト
    • ステップ5: プロンプトに従って既存の PDO を変更するか、新しい PDO を追加します
    • ステップ6: 「ターゲットに送信」アイコンをクリックして、更新されたPDOリストをボードに送信します。
    • ステップ7: 「すべてをターゲットに保存」アイコンをクリックして、更新されたPDOリストをボードに保存します[*]。

元はampコード内で固定供給 PDO を定義する方法の例:

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

Exampファイル構成

5 V、3 Aの固定電源PDOの場合:

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

追加の考慮事項: 

  • 動的 PDO 選択: usbpd_user_services.c の USED_PDO_SEL_METHOD 変数を変更することで、実行時に PDO 選択方法を動的に変更できます。 file[*] 。
  • 機能の評価: USBPD_DPM_SNK_EvaluateCapabilitiesなどの関数を使用して、受信した機能を評価し、要求メッセージを準備します[*]。

PDOを構築するには、ボリュームを定義する必要がありますtag電流(または電力)パラメータを設定し、STM32CubeMonUCPDなどのツールやコード内で直接設定します。以下の手順に従うことで、amp提供されるファイルを使用すると、USB PD アプリケーション用の PDO を効果的に作成および管理できます。

複数の PD シンクが接続されている場合の優先順位付けスキームの機能はありますか?

はい、複数のPDシンクが接続されている場合に優先順位付けをサポートする機能があります。これは、複数のデバイスが単一の電源に接続されているシナリオで特に便利です。電力配分は優先順位に基づいて管理する必要があります。

優先順位付けスキームは、USBPD_DPM_SNK_EvaluateCapabilities関数を使用して管理できます。この関数は、PDソースから受信した機能を評価し、シンクの要件と優先度に基づいて要求メッセージを準備します。複数のシンクを処理する場合は、各シンクに優先度を割り当て、USBPD_DPM_SNK_EvaluateCapabilities関数をこれらの優先度を考慮するように変更することで、優先順位付けスキームを実装できます。

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

GUI には LPUART で DMA を使用する必要があるのでしょうか?

はい、ST-LINK ソリューションを介して通信することが必須です。

LPUART のワード長 7 ビットの設定は正しいですか?

はい、その通りです。

STM32CubeMXツールには、「非アクティブなUCPDの電力を節約 - 非アクティブなデッドバッテリープルアップ」というチェックボックスがあります。このチェックボックスが有効になっている場合、どのような意味を持つのでしょうか?

SOURCEモードの場合、USB Type-C®は3.3Vまたは5.0Vに接続されたプルアップ抵抗を必要とします。これは電流源ジェネレータとして機能します。USB Type-C® PDを使用しない場合は、この電流源を無効にすることで消費電力を削減できます。

STM32G0とUSB PDアプリケーションにはFreeRTOSを使用する必要がありますか?FreeRTOS以外のUSB PDアプリケーション向けの計画はありますか?ampレ?

STM32G0マイクロコントローラ上のUSB Power Delivery(USB PD)アプリケーションでは、FreeRTOSの使用は必須ではありません。メインループ内でイベントやステートマシンを処理するか、サービスルーチンに割り込むことで、RTOSなしでUSB PDを実装できます。USB Power Delivery exの要望はありましたが、ampRTOSなしのファイル。現在、非RTOSの例はありません。ampleは利用可能です。ただし、一部のAzureRTOS exampSTM32U5 および H5 シリーズで使用できます。

STM32G0用のUSB PDアプリケーションを構築するSTM32CubeMXデモでは、HSIの精度はUSB PDアプリケーションに許容されますか?それとも、外付けのHSE水晶振動子の使用が必須ですか?

HSIはUCPDペリフェラルのカーネルクロックを提供するため、HSEを使用するメリットはありません。また、STM32G0はデバイスモードではUSB 2.0の水晶発振器なしで動作するため、HSEはUSB 2.0ホストモードでのみ必要となります。

図3UCPDリセットとクロック

UCPDリセットとクロック

後ほど説明されているように、CubeMX を設定するために参照できるドキュメントはありますか?

ドキュメントは以下のとおりです ウィキリンク.

STM32 Cubeモニターはリアルタイムモニタリングが可能ですか?STM32とST-LINKを接続することでリアルタイムモニタリングは可能ですか?

はい、STM32CubeMonitorはSTM32とST-LINKを接続することでリアルモニタリングを行うことができます。

VBUSボリュームはtagUCPD 対応ボードでは基本かつデフォルトでモニター画面に表示される電流測定機能、または追加された NUCLEO ボードの機能ですか?

正確な体積tagVBUSボリュームによりネイティブに測定が可能tagUSB Type-C®ではeが必要です。
TCPP02-M18 / TCPP03-M20はハイサイドのため正確な電流測定が可能です。 amp過電流保護を実行するために、抵抗器とシャント抵抗器も使用されます。

アプリケーションコードジェネレータ

CubeMXは、FreeRTOS™と同じように、X-CUBE-TCPPを使ったAzure RTOSベースのプロジェクトを生成できますか?FreeRTOS™を使わずにUSB PDを管理するコードを生成できますか?このソフトウェアスイートは動作にRTOSが必要ですか?

STM32CubeMXは、MCUで利用可能なRTOSであるFreeRTOS™(STM32G0など)を使用して、X-CUBE-TCPPパッケージによってコードを生成します。ample)、またはAzureRTOS(STM32H5など)ample)。

X-CUBE-TCPP は、STSW-2STPD01 ボードなどのデュアル Type-C PD ポート用のコードを生成できますか?

X-CUBE-TCPPは1つのポートに対してのみコードを生成できます。2つのポートに対してコードを生成するには、STM32リソースが重複しないように、TCPP02-M18の2つのI2Cアドレスを持つ2つの別々のプロジェクトを生成し、それらをマージする必要があります。
幸いなことに、 STSW-2STPD01 2つのポート用の完全なファームウェアパッケージが付属しています。そのため、コードを生成する必要はありません。

この設計ツールは、USB Type-C® を搭載したすべてのマイクロコントローラで動作しますか?

はい、X-CUBE-TCPPは、UCPDを内蔵するあらゆるSTM32デバイス(シンク/ソース/デュアルロール)で動作します。32V Type-CソースのSTM5デバイスであれば、どのデバイスでも動作します。

表1. ドキュメントの改訂履歴

日付 リビジョン 変更点
20年2025月XNUMX日 1 初回リリース。

重要なお知らせ – よくお読みください

STMicroelectronics NV およびその子会社 (以下「ST」) は、ST 製品および/またはこのドキュメントを予告なしにいつでも変更、修正、拡張、修正、および改善する権利を留保します。購入者は、注文を行う前に ST 製品に関する最新の関連情報を入手する必要があります。ST 製品は、注文確認時に適用される ST の販売条件に従って販売されます。

ST 製品の選択、選択、使用については購入者が単独で責任を負い、ST は購入者の製品の適用支援や設計については一切責任を負いません。

ST は、明示的か黙示的かを問わず、いかなる知的財産権のライセンスも付与しません。

ここに記載されている情報と異なる規定を伴う ST 製品を再販した場合、当該製品に対して ST が付与した保証は無効になります。

STおよびSTロゴはSTの商標です。ST商標に関する追加情報については、 www.st.com/商標その他すべての製品名またはサービス名は、それぞれの所有者の財産です。

このドキュメントの情報は、このドキュメントの以前のバージョンで以前に提供された情報に優先し、置き換えられます。

© 2025 STマイクロエレクトロニクス – 無断転載を禁じます
ロゴ

ドキュメント / リソース

ST STM32 USB Type-C パワーデリバリー [pdf] ユーザーマニュアル
TN1592、UM2552、STEVAL-2STPD01、STM32 USB Type-C Power Delivery、STM32、USB Type-C Power Delivery、Type-C Power Delivery、Power Delivery、Delivery

参考文献

コメントを残す

あなたのメールアドレスは公開されません。 必須項目はマークされています *