DIODES-ロゴ

DIODES AP33772 USB PD シンク コントローラー Raspberry Pi I2C インターフェイス

DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Interface-PRODUCT

導入

  • AP33772 シンク コントローラーは、USB PD3.0​​.3.0 Type C コネクター搭載デバイス (TCD、エネルギー シンク) のプロトコル デバイスとして動作し、USB PD3.0​​.XNUMX Type C コネクター搭載 PDXNUMX から適切な Power Data Object (PDO) を要求することを目的としています。 .XNUMX準拠の充電器(PDC、エネルギー源)。
  • 図 1 は、PD3.0 シンク コントローラー IC (AP33772) が組み込まれた TCD が、USB PD3.0​​.43771 デコーダ (APXNUMX) が組み込まれた PDC に物理的に接続されていることを示しています。
  • タイプC-タイプCケーブル。 内蔵の USB PD3.0​​.33772 準拠ファームウェアに基づいて、AP43771 と AP3.0 のペアは、USB PD3.0​​.XNUMX 標準接続手順を実行して、適切な PDXNUMX 充電状態を確立します。
  • AP33772 シンク コントローラ EVB は、システム設計者が I33772C インターフェイス経由で AP2 内蔵コマンドを送信することで USB 電力供給充電器から PDO を要求できる使いやすさと優れた多用途性を提供します。 一般的なシステム設計には MCU プログラミングが必要ですが、これには特定のソフトウェア (IDE など) のセットアップが必要で、時間のかかる開発プロセスになる可能性があります。
  • 対照的に、ユーザーフレンドリーな Linux OS 上で動作し、柔軟な GPIO ピンを備えたシングルボード コンピューター (SBC) である Raspberry Pi (RPI) は、PD 充電器で動作する AP33772 シンク EVB を検証する簡単な方法を提供します。 このガイドの目的は、システム設計者に、RPI でのソフトウェア検証を迅速に完了し、開発を望ましい MCU に移植して迅速なターンアラウンド市場の要件を満たすための効果的なプラットフォームを提供することです。
  • AP33772 EVB ユーザー ガイドの補足文書として、このユーザー ガイドでは、I33772C インターフェイスを介して RPI SBC を使用して AP2 EVB を制御する簡単な方法を説明します。
  • 図 1 に示されている MCU ブロックの AP33772 とのインターフェイスの役割は、RPI によって実行されます。 このユーザー ガイドでは、多くのレジスタ定義と使用法に関する情報を説明しています。ampただし、完全かつ最新の情報については、AP33772 EVB ユーザー ガイドを参照してください。 (参考資料2参照)DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-1
  • 図1 – 一般的な TCD は、I33772C インターフェイスを備えた AP2 PD シンク コントローラーを使用して、USB Type-C PD3.0/PPS コンプライアンス ソース アダプターからの電力を要求します。

検証プラットフォームのセットアップ

AP33772 シンクコントローラー EVB
図2 に、シンク コントローラー EVB の写真を示します。 Type-C コネクタ、I2C ピン、割り込み用 GPIO3 ピン、OTP 用 NTC サーミスタ、充電ステータスを示す LED インジケータ、負荷への Vout コネクタを備えています。DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-2

ラズベリーパイゼロ2W

  • RPI の最新バージョンはどれも、I33772C ピンを介して AP2 シンク コントローラー EVB を制御できます。 このユーザーガイドでは、コスト効率と多用途性を考慮して Raspberry Pi Zero 2 W (RPI Z2W) を使用します。 すべての RPI の中で最小のフォームファクターを持ち、WiFi および Bluetooth と統合されているため、追加コンポーネントなしでワイヤレス接続が可能です。 AP33772 シンク コントローラー EVB 検証プラットフォームとしての目的を完全に果たします。
  • ユーザーはRaspberry Pi公式を確認してください web追加情報のサイト (https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/)DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-3DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-4

検証プラットフォームの接続と電源投入

図5 は、検証プラットフォームの完全な接続とセットアップを示しています。 ユーザーは次の手順に従う必要があります。

  1. SCL、SDA、および GND ピンを RPI と AP33772 EVB の間に接続します
  2. 65W PD 充電器と AP33772 EVB を Type-C ケーブルで接続
  3. RPI と PD 充電器の電源を入れます。DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-5

Raspberry Pi ソフトウェアのセットアップ

ラズベリーパイOS

  • RPI をサポートするオペレーティング システムは数多くあります。 このうち、Raspberry Pi OSは最も使用されており、RPI公式サイトでも推奨されているため、Raspberry Pi OSを選択しました。

OSイメージのダウンロードとSDカードの準備

Raspberry PI OSのインストール

  • 先ほどイメージャをロードした Micro-SD カードを RPI の Micro-SD スロットに挿入します。 電源アダプター、マウス/キーボード、HDMI モニターを接続します。 RPI の電源をオンにし、指示に従って OS のインストールと基本セットアップを完了します。 最新のアップデートが OS に含まれていることを確認してください。

必要な機能のセットアップ

  • RPI で I2C インターフェイスを正常に実行するには、SSH、VNC、および I2C 機能を構成またはインストールする必要があります。

Raspberry Pi 構成 - SSH、VNC、I2C

  • RPI の起動後、「Raspberry Pi Configure」ユーティリティを開き、SSH、VNC、および I2C 機能をオンにします。DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-7

I2C ボーレート設定

  • /boot/config.txt 内の dtparam および dtoverlay に関する行を置き換えます。 file と:
  • dtoverlay=i2c-bcm2708
  • dtparam=i2c_arm=on,i2c_arm_baudrate=640000

I2C ツールのインストール

  • I2C-Tools は、Raspberry Pi OS のコマンド ラインで実行される単純なコマンドを提供するツールセットです。 sudo apt install i2c-tools を実行して、OS に I2C ツールをインストールします。

SMBus2のインストール

  • SMBus2 は、Python 環境下でユーザーが I2C インターフェイスを制御するための便利な機能を提供する Python モジュールです。 sudo pip2 install smbus3 を実行して、Python 用の SMBus2 モジュールを OS にインストールします。

基本コマンド例ampレ

  • このユーザー ガイドでは、RPI で I2C インターフェイスを操作するための 2 つの異なる方法を説明します。 それは、I2C-Tools ユーティリティと Python SMBusXNUMX モジュールです。 このセクションでは、両方の方法の基本的なコマンドを紹介します。

 I2C ツール コマンド Exampレ

  • I2C-Tools ユーティリティ パッケージは、i2cdetect、i2cget、および i2cset コマンドを提供します。 簡略化された使用法は例で説明されていますampこのセクションの下にあるファイル。 I2C-Tools ユーティリティの詳細については、以下を参照してください。 https://linuxhint.com/i2c-linux-utilities/.
  • 表 1 は、このセクションのコマンドの使用法をわかりやすくするために、AP33772 レジスタの概要を示しています。 完全なレジスタ情報については、「AP33772 シンク コントローラー EVB ユーザー ガイド」を参照してください。
登録する 指示 長さ 属性 電源オン 説明
 

SRCPDO

 

0x00

 

28

 

RO

 

すべて00h

PD ソース (SRC) の電力機能を公開するために使用される電力データ オブジェクト (PDO)。

合計の長さは 28 バイトです

プドナム 0x1C 1 RO 00時間 有効なソース PDO 番号
状態 0x1D 1 RC 00時間 AP33772のステータス
マスク 0x1E 1 RW 01時間 割り込みイネーブルマスク
巻TAGE 0x20 1 RO 00時間 LSB 80mV
現在 0x21 1 RO 00時間 LSB 24mA
温度 0x22 1 RO 19時間 温度、単位:℃
OCPTHR 0x23 1 RW 00時間 OCP閾値、LSB 50mA
OTPTHR 0x24 1 RW 78時間 OTP しきい値、単位: °C
DRTHR 0x25 1 RW 78時間 ディレーティング閾値、単位: °C
TR25 0x28 2 RW 2710時間 熱抵抗 @25°C、単位: Ω
TR50 0x2A 2 RW 1041時間 熱抵抗 @50°C、単位: Ω
TR75 0x2C 2 RW 0788時間 熱抵抗 @75°C、単位: Ω
TR100 0x2E 2 RW 03CEh 熱抵抗 @100°C、単位: Ω
RDO 0x30 4 WO 00000000時間 リクエスト データ オブジェクト (RDO) は、電力機能をリクエストするために使用されます。
ビデオ 0x34 2 RW 0000時間 ベンダー ID、将来のアプリケーションのために予約されています
ピジョン 0x36 2 RW 0000時間 製品 ID、将来のアプリケーションのために予約されています
予約済み 0x38 4 将来のアプリケーションのために予約されています

表 1 – AP33772 レジスタの概要

I2C に接続されているすべてのデバイスを検出 – i2cdetect

  • 現在 I2C-2 バスに接続されているすべての i1c デバイスを表示するには、コマンド プロンプトで次のように入力します: i2cdetect -y 1
  • AP33772 シンク コントローラー EVB が接続されている場合、デバイスが 0x51 アドレスに接続されていることが表示されます。

SRCPDO (0x00~0x1B) を読み出す

  • i2cget コマンドは 2 バイトを超えるブロック読み取りをサポートしていません。 28 バイト長の PDO データをすべて表示するには、「for ループ」を使用する必要があります。 すべての PDO データを表示するには、bash コマンド プロンプトで i in {0..27} と次のように入力します。 do i2cget -y 1 0x51 $ib; 終わり
  • 28 つの PDO を表す 7 バイトのデータが表示されます

PDONUM (0x1C) の読み取り

  • 有効な PDO の合計数を表示するには、コマンド プロンプトで次のように入力します: i2cget -y 1 0x51 0x1c b

ステータスの読み取り (0x1D)

  • このコマンドは、ディレーティング、OTP、OCP、OVP、要求拒否、要求完了、準備完了などのシンク コントローラーのステータスを報告します。 ステータス情報を表示するには、コマンド プロンプトで次のように入力します: i2cget -y 1 0x51 0x1d b
  • ユーザーは、COMPLETE ビットを読み取って RDO 要求が確実に成功するように、各 RDO 要求の後にこのコマンドを使用する必要があります。 4.1.5 マスク書き込み(0x1E)
  • このコマンドは、AP3 の GPIO33772 ピンを介してホストに信号を送信する割り込みを有効にします。 割り込みには、ディレーティング、OTP、OCP、OVP、リクエスト拒否、リクエスト完了、準備完了が含まれます。 特定の割り込みを有効にするには、対応するビットを XNUMX に設定します。 元の場合ampファイルで、OCP 割り込みを有効にするには、コマンド プロンプトで次のように入力して、MASK レジスタのビット 4 を 2 に設定します: i1cset -y 0 51x0 1x0e 10xXNUMX b
  • OCP 保護がトリガーされると、AP3 の GPIO33772 ピンが High になります。

VOLを読むTAGE (0x20)

  • このコマンドは、ボリュームを報告します。tage は AP33772 シンク コントローラーによって測定されます。 ボリュームをレポートするにはtage、コマンド プロンプトで次のように入力します: i2cget -y 1 0x51 0x20 b
  • 報告値の 80 単位は XNUMXmV を表します。

電流を読み取る (0x21)

  • このコマンドは、AP33772 シンク コントローラーによって測定された電流を報告します。 現在の値を報告するには、コマンド プロンプトで次のように入力します: i2cget -y 1 0x51 0x21 b
  • 報告値の 24 単位は XNUMXmA を表します。

TEMP の読み取り (0x22)

  • このコマンドは、AP33772 シンク コントローラーによって測定された温度を報告します。 温度を報告するには、コマンド プロンプトで次のように入力します。
    i2cget -y 1 0x51 0x22 b
  • 報告値の 1 単位は XNUMX°C を表します。
  • 読み取りおよび書き込み OCPTHR (0x23)、OTPTHR (0x24)、および DRTHR (0x25)
  • OCP、OTP、および軽減しきい値は、OCPTHR、OTPTHR、および DRTHR レジスタに値を書き込むことによって、ユーザーが希望する値に変更できます。 元恋人としてampファイルで、OCP しきい値を 3.1A に変更するには、コマンド プロンプトで次のように入力して、OCPTHR に 0x3E (=3100/50=62=0x3E) を書き込む必要があります: i2cset -y 1 0x51 0x23 0x3e b
  • OTP しきい値を 110°C に変更するには、コマンド プロンプトで次のように入力して、OTPTHR に 0x6E (=110) を書き込む必要があります。
  • OCPTHR、OTPTHR、および DRTHR から値を読み取るには、コマンド プロンプトで次のように入力します。
  • i2cget -y 1 0x51 0x23 b i2cget -y 1 0x51 0x24 b i2cget -y 1 0x51 0x25 b
  • 読み取りおよび書き込み TR25 (0x28~0x29)、TR50 (0x2A~0x2B)、TR75 (0x2C~0x2D)、および TR100 (0x2E~0x2F)
  • Murata 10KΩ 負温度係数 (NTC) サーミスタ NCP03XH103 が AP33772 EVB に搭載されています。 最終設計でサーミスタを別のサーミスタに変更するのはユーザーの好みです。 ユーザーは、使用するサーミスタの仕様に従って、TR25、TR50、TR75、および TR100 レジスタの値を更新する必要があります。 元の場合ampル、
  • 設計には村田製作所の6.8KΩ NCP03XH682が使用されています。 25°C、50°C、75°C、および 100°C での抵抗値は、それぞれ 6800Ω (0x1A90)、2774Ω (0x0AD6)、1287Ω (0x0507)、および 662Ω (0x0296) です。 対応する値をこれらのレジスタに書き込むには、コマンド プロンプトで次のように入力します。
  • i2cset -y 1 0x51 0x28 0x1a90 w i2cset -y 1 0x51 0x2a 0x0ad6 w i2cset -y 1 0x51 0x2c 0x0507 w i2cset -y 1 0x51 0x2e 0x0296 w
  • 値を読み出すには、コマンド プロンプトで次のように入力します。 i2cget -y 1 0x51 0x28 w i2cget -y 1 0x51 0x2a w i2cget -y 1 0x51 0x2c w i2cget -y 1 0x51 0x2e w
  • 出力値は 2 バイトのワードです。 コマンドは 2 バイトのワードを直接処理するため、ユーザーはここでリトル エンディアンのバイト順序を気にする必要はありません。

RDO書き込み(0x30~0x33)

  • PDO リクエスト ネゴシエーション手順を開始するには、4 バイトのデータがリトル エンディアン バイト オーダーで RDO (リクエスト データ オブジェクト) レジスタに書き込まれます。 元のようにampファイルで、3V および 15A の PDO3 を要求するには、0x3004B12C が RDO レジスタに書き込まれます。 コマンド プロンプトで次のように入力します: i2cset -y 1 0x51 0x30 0x2c 0xb1 0x04 0x30 i
  • リトルエンディアンのバイトオーダー表記に適合させるために、最下位バイト (0x2C) を最初に書き込む必要があります。 AP9 シンク コントローラー EVB ユーザーの表 10 および表 33772 を参照してください。
  • RDO コンテンツの詳細情報に関するガイド。
  • ユーザーは、RDO レジスタにオールゼロのデータを書き込むことでハード リセットを発行できます: i2cset -y 1 0x51 0x30 0x00 0x00 0x00 0x00 i
  • AP33772 シンク コントローラーは初期状態にリセットされ、出力がオフになります。

Python SMBus2 コマンド Exampレ

  • Python は、サポートされているモジュールの種類が豊富であるため、人気が高まっています。 SMBus2 はその 2 つであり、I2C 読み取りおよび書き込みコマンドを処理できます。 SMBus2 は、read_byte_data、read_word_data、read_i2c_block_data、write_byte_data、write_word_data、write_iXNUMXc_block_data コマンドを提供します。 簡略化された使用法は例で説明されていますampこのセクションの下にあるファイル。 SMBus2 モジュールの詳細については、以下を参照してください。 https://smbus2.readthedocs.io/en/latest/.

SRCPDO (0x00~0x1B) を読み出す 

  • SMBus.read_i2c_block_data は、最大 32 バイトのブロック データ読み取りをサポートする効果的なコマンドです。 すべての 28 バイト PDO データを読み取るには、python3 環境で以下を使用します。
  • SMBus.read_i2c_block_data(0x51, 0x00, 28)
  • 28 つの PDO を表す 7 個の XNUMX バイト データがリスト データ構造で返されます。

PDONUM (0x1C) の読み取り

  • 有効な PDO の合計数を読み取るには、python3 環境で以下を使用します。
  • SMBus.read_byte_data(0x51, 0x1c)
  • 有効な PDO 数を表す XNUMX バイトのデータが返されます。

ステータスの読み取り (0x1D)

  • このコマンドは、ディレーティング、OTP、OCP、OVP、リクエスト拒否、リクエスト完了、準備完了などのシンク コントローラーのステータスを報告します。 ステータス情報を読み取るには、python3 環境で以下を使用します。
  • SMBus.read_byte_data(0x51, 0x1d)
  • ユーザーは、各 RDO リクエストの後にこのコマンドを使用して、COMPLETE ビットを読み取ることで RDO リクエストが成功したことを確認できます。

マスク書き込み (0x1E)

  • このコマンドは、AP3 の GPIO33772 ピンを介してホストに信号を送信する割り込みを有効にします。 割り込みには、ディレーティング、OTP、OCP、OVP、リクエスト拒否、リクエストが含まれます。
  • 完成、準備完了。 特定の割り込みを有効にするには、対応するビットを XNUMX に設定します。 元の場合ampファイルで、OCP 割り込みを有効にするには、Python4 環境で次のコマンドを使用して MASK レジスタのビット 3 を XNUMX に設定します。
  • SMBus.write_byte_data(0x51, 0x1e, 0x10)
  • OCP 保護がトリガーされると、AP3 の GPIO33772 ピンが High になります。

VOLを読むTAGE (0x20)

  • このコマンドは、ボリュームを報告します。tage は AP33772 シンク コントローラーによって測定されます。 ボリュームをレポートするにはtage、python3 環境では以下を使用します。
  • SMBus.read_byte_data(0x51, 0x20)
  • 報告値の 80 単位は XNUMXmV を表します。

電流を読み取る (0x21)

  • このコマンドは、AP33772 シンク コントローラーによって測定された電流を報告します。 現在を報告するには、python3 環境で次を使用します。
  • SMBus.read_byte_data(0x51, 0x21)
  • 報告値の 24 単位は XNUMXmA を表します。

TEMP の読み取り (0x22)

  • このコマンドは、AP33772 シンク コントローラーによって測定された温度を報告します。 温度を報告するには、Python3 環境で次を使用します。
  • SMBus.read_byte_data(0x51, 0x22)
  • 報告値の 1 単位は XNUMX°C を表します。

読み取りおよび書き込み OCPTHR (0x23)、OTPTHR (0x24)、および DRTHR (0x25) 

  • OCP、OTP、および軽減しきい値は、OCPTHR、OTPTHR、および DRTHR レジスタに値を書き込むことによって、ユーザーが希望する値に変更できます。 元恋人としてampファイル、OCP しきい値を 3.1A に変更するには、Python0 環境で次を使用して 3x3100E (=50/62=0=3x3E) を OCPTHR に書き込む必要があります: SMBus.write_byte_data(0x51, 0x23, 0x3e)
  • OTP しきい値を 110°C に変更するには、Python0 環境で次を使用して OTPTHR に 6x110E (=3) を書き込む必要があります: SMBus.write_byte_data(0x51, 0x24, 0x6e)
  • ディレーティングしきい値を 100°C に変更するには、Python0 環境で次を使用して 64x100 (=3) を DRTHR に書き込む必要があります: SMBus.write_byte_data(0x51, 0x25, 0x64)
  • OCPTHR、OTPTHR、および DRTHR から値を読み取るには、python3 環境で以下を使用します。 SMBus.read_byte_data(0x51, 0x23) SMBus.read_byte_data(0x51, 0x24) SMBus.read_byte_data(0x51, 0x25) 。
  • 読み取りおよび書き込み TR25 (0x28~0x29)、TR50 (0x2A~0x2B)、TR75 (0x2C~0x2D)、および TR100 (0x2E~0x2F)
  • Murata 10KΩ 負温度係数 (NTC) サーミスタ NCP03XH103 が AP33772 EVB に搭載されています。 最終設計でサーミスタを別のサーミスタに変更するのはユーザーの好みです。 ユーザーは、使用するサーミスタの仕様に従って、TR25、TR50、TR75、および TR100 レジスタの値を更新する必要があります。 元の場合ampたとえば、村田製作所の 6.8KΩ NCP03XH682 が設計に使用されています。 25°C、50°C、75°C、および 100°C での抵抗値は、それぞれ 6800Ω (0x1A90)、2774Ω (0x0AD6)、1287Ω (0x0507)、および 662Ω (0x0296) です。 対応する値をこれらのレジスタに書き込むには、python3 環境で次のコマンドを使用します。
  • SMBus.write_word_data(0x51, 0x28, 0x1a90) SMBus.write_word_data(0x51, 0x2a, 0x0ad6) SMBus.write_word_data(0x51, 0x2c, 0x0507) SMBus.write_word_data(0x51, 0x2e, 0x0296)
  • 値を読み出すには、python3 環境で次を使用します。 SMBus.read_word_data(0x51, 0x28) SMBus.read_word_data(0x51, 0x2a) SMBus.read_word_data(0x51, 0x2c) SMBus.read_word_data(0x51, 0x2e)
  • 戻り値も 2 バイトワードです。 コマンドは 2 バイトのワードを直接処理するため、ユーザーはここでリトル エンディアンのバイト順序を気にする必要はありません。

RDO書き込み(0x30~0x33)

  • PDO リクエスト ネゴシエーション手順を開始するには、4 バイトのデータがリトル エンディアン バイト オーダーで RDO (リクエスト データ オブジェクト) レジスタに書き込まれます。 元のようにampファイルで、3V および 15A の PDO3 を要求するには、0x3004B12C が RDO レジスタに書き込まれます。 python3 環境では以下を使用します。
  • SMBus.write_i2c_block_data(0x51, 0x30, [0x2c, 0xb1, 0x04, 0x30])
  • RDO コンテンツの詳細については、『AP9 シンク コントローラー EVB ユーザー ガイド』の表 10 および表 33772 を参照してください。
  • ユーザーは、RDO レジスタにオール XNUMX データを書き込むことでハード リセットを発行できます。
  • SMBus.write_i2c_block_data(0x51, 0x30, [0x00, 0x00, 0x00, 0x00])
  • AP33772 シンク コントローラーは初期状態にリセットされ、出力がオフになります。

実用的な例ampレ

Example 1: Bash I2C ツール Exampファイル: ap33772_querypdo.bash
この元ample はすべての有効な PDO をチェックし、ボリュームをリストします。tage と現在の機能情報が出力されます。
コードの詳細DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-8

コードの実行と出力DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-9

Example 2: Python SMBus2 Exampファイル: ap33772_allpdo.py3
この元ample は、すべての有効な PDO をチェックし、それらを上から下の順に ​​XNUMX つずつ要求します。
コードの詳細DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-10DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-11DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-12

コードの実行と出力DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-13DIODES-AP33772-USB-PD-シンク-コントローラー-Raspberry-Pi-I2C-インターフェイス-FIG-14

Exampファイルコードのダウンロード

Exのリストampルコード

  • Exampファイルコードには Bash スクリプトと Python のバージョンがあります
  1. ap33772_querypdo: すべての PDO 情報をクエリします
  2. ap33772_reqpdo: すべての PDO 情報を報告し、ユーザーが指定した PDO リクエストを送信します
  3. ap33772_allpdo: すべての PDO 情報をレポートし、すべての PDO リクエストをアップダウン方式でウォークスルーします。
  4. ap33772_pps: すべての PDO 情報をレポートし、rampPPS ボリューム全体を上下に動かしますtag50mVステップサイズのeレンジ
  5. ap33772_vit: レポート voltage、電流、温度情報
Exampファイルダウンロードサイト

Example コードはGithubからダウンロードできます。 次のコマンドを発行してダウンロードします: git clone https://github.com/diodinciot/ap33772.git-ap33772

参考文献

  1. AP33772 データシート (USB PD3.0​​.XNUMX PPS シンク コントローラー): https://www.diodes.com/products/power-management/ac-dc-converters/usb-pd-sink-controllers/
  2. AP33772 I2C シンク コントローラー EVB ユーザー ガイド: https://www.diodes.com/applications/ac-dc-chargers-and-adapters/usb-pd-sink-controller/
  3. ラズベリーパイゼロ2W: https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/
  4. ラズベリーパイOS: https://www.raspberrypi.com/software/
  5. I2C ツール ユーティリティ: https://linuxhint.com/i2c-linux-utilities/
  6. SMBus2モジュール: https://smbus2.readthedocs.io/en/latest/

改訂履歴

リビジョン 発行日 コメント 著者
1.0 4年15月2022日 初回リリース エドワード・チャオ
重要なお知らせ
  • DIODES INcorporated は、この文書に関して、商品性および特定目的への適合性 (およびあらゆる法域の法律における同等の保証) の黙示的な保証を含むがこれらに限定されない、明示的か黙示的かを問わず、いかなる種類の保証も行いません。
  • Diodes Incorporated およびその子会社は、本書および本書に記載されている製品に対して、予告なしに修正、強化、改善、修正、またはその他の変更を行う権利を留保します。 Diades Incorporated は、本書または本書に記載されている製品の適用または使用から生じるいかなる責任も負いません。 また、Diodes Incorporated は、その特許権または商標権に基づくライセンス、または他者の権利を譲渡するものではありません。 この文書またはそのようなアプリケーションに記載されている製品の顧客またはユーザーは、そのような使用のすべてのリスクを負い、Diodes Incorporated およびDiodes Incorporated に製品が掲載されているすべての会社を保有することに同意するものとします。 webサイト、すべての損害に対して無害。
  • Diodes Incorporated は、無許可の販売ルートを通じて購入された製品に関して、いかなる保証も負わず、いかなる責任も負いません。
    顧客が意図しない用途または無許可の用途のためにDiodes Incorporated製品を購入または使用した場合、顧客はDiodesを補償し、保有するものとします。
  • Incorporated およびその代表者は、そのような意図しないまたは許可されていない申請に関連する人身傷害または死亡の請求から直接的または間接的に生じるすべての請求、損害、費用、および弁護士費用に対して無害です。
  • ここに記載されている製品は、出願中の米国、国際、または外国の XNUMX つまたは複数の特許によって保護されている場合があります。 ここに記載されている製品名およびマーキングは、XNUMX つまたは複数の米国、国際、または外国の商標によって保護されている場合もあります。
  • このドキュメントは英語で書かれていますが、参照用に複数の言語に翻訳されている場合があります。 このドキュメントの英語版のみが、Diodes Incorporated によってリリースされた最終的で決定的な形式です。

ライフサポート

  • Diodes Incorporated の製品は、Diodes Incorporated の最高経営責任者の書面による明示的な承認なしに、生命維持装置またはシステムの重要なコンポーネントとして使用することは明確に許可されていません。 本明細書で使用される場合:
  • A。 生命維持装置またはシステムとは、次のような装置またはシステムです。
  1. 体内に埋め込むことを意図している、または
  2. 生命をサポートまたは維持し、ラベルに記載されている使用説明書に従って適切に使用した場合に機能しない場合、ユーザーに重大な傷害をもたらすことが合理的に予想されます。
    • B. 重要なコンポーネントとは、生命維持装置またはシステムのコンポーネントであり、その機能不全が生命維持装置の故障を引き起こしたり、その安全性や有効性に影響を与えたりすることが合理的に予想されるものです。
    • 顧客は、生命維持装置またはシステムの安全性および規制上の影響について必要な専門知識をすべて持っていることを表明し、自社の製品およびダイオードの使用に関するすべての法律、規制、および安全関連の要件に対して単独で責任を負うことを認め、これに同意するものとします。 Diades Incorporated によって提供されるデバイスまたはシステム関連の情報またはサポートにかかわらず、安全性が重要な生命維持装置またはシステムに製品が組み込まれる場合。
    • さらに、お客様は、そのような安全性が重要な生命維持装置またはシステムにおける Diades Incorporated 製品の使用から生じるあらゆる損害に対して、Diodes Incorporated およびその代表者を完全に補償する必要があります。

ドキュメント / リソース

DIODES AP33772 USB PD シンク コントローラー Raspberry Pi I2C インターフェイス [pdf] ユーザーガイド
AP33772 USB PD シンク コントローラー Raspberry Pi I2C インターフェイス、AP33772、USB PD シンク コントローラー Raspberry Pi I2C インターフェイス、Raspberry Pi I2C インターフェイス、Pi I2C インターフェイス

参考文献

コメントを残す

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