JAJZ032D July 2023 – November 2025 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3105-Q1 , MSPM0G3106 , MSPM0G3106-Q1 , MSPM0G3107 , MSPM0G3107-Q1 , MSPM0G3505 , MSPM0G3505-Q1 , MSPM0G3506 , MSPM0G3506-Q1 , MSPM0G3507 , MSPM0G3507-Q1
I2C モジュール
機能
SMBus の High タイムアウト機能は、I2C クロックが 24 kHz 未満になると動作しません
SMBus の High タイムアウト機能は、I2C クロックレートが 24 kHz 未満(20 kHz、10 kHz など)では正常に動作しません。SMBus仕様から、アクティブトランザクション中のSCL High時間の上限は50µsです。開始MMRビットの書き込みからSCL Lowまでに要する合計時間は60µsで、50µs以上です。タイムアウトイベントのトリガがかかりされ、転送開始時にトランザクションを完了することなくI2CコントローラがIDLEに移行できます。以下は詳細な説明です。SCL が 20 kHz に構成されている場合、SCL の Low 期間と High 期間はそれぞれ 30 µs および 20 µs です。まず、Highタイムアウトカウンタでデクリメントが開始し、同時にMMRビットの書き込みが開始します。その後、START MMR ビットの書き込みから SDA が Low(スタート条件)になるまでに、1 SCL Low 期間(30 µs)かかります。次に、SDAがLow(スタート条件)になってからSCLがLowになる(データ転送が開始)までにさらに別のSCL Low期間(30µs)がかかり、この時点でHighタイムアウトカウンタが停止します。合計で、カウンターの開始から終了まで60µsかかります。ただし、高タイムアウトカウンタには上限(50µs)により、I2Cトランザクションは問題なく正常に動作しますが、タイムアウトイベントがトリガされます。
I2Cクロックが24KHz未満の場合は、SMBus高タイムアウト機能を使用しないでください。