2384618_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2384618_ja-JP

2384618_ja-JP

RT1064 400kHzでのI2C通信異常

RT1064デバイスのI2C2インターフェースはモジュールAに接続されます。通信異常は400kHzで発生しますが、100kHzでは正常に動作します


1. 同じシリーズ内の異なるモデルのモジュールBを400kHzで接続することは問題ありません
2. 波形の観点からは、ホストクロックが伸縮され、モジュールAに接続された後に復元される異常に相当します
追伸:デバイスのI2Cドライバーポートを別の1064デバイスに実装し、モジュールAをテストしましたが、400kで問題ありません
その理由は何でしょうか?

1. 図1 モジュールA ロジックアナライザの400kHzにおける異常波形

foreverwlh2025_0-1782181859478.png

2. 図2:モジュールAの100kHzにおけるロジックアナライザの波形

foreverwlh2025_1-1782181977222.png

3. 図3:モジュールBの400kHzにおける波形

foreverwlh2025_2-1782182029028.png


i.MXRT 106xRe: RT1064 I2C communication abnormality at 400kHz

こんにちは、 @foreverwlh2025 さん

追加のご説明ありがとうございます。これは非常に重要な指摘です。
 

あなたの観察からすると、問題はモジュールA自体の異常というよりも、2段ADUM1251アイソレーションリンクによる400 kHz I2Cのタイミングマージン不足に関連している可能性が高いようです。

ライズ時間が規格内であっても、RT1064ではLPI2Cマスター側の400kHz構成、特にMCFGR2[FILTSCL/FILTSDA]およびMCCR0/MCCR1の確認を推奨します。なぜなら、RT1064のマスター同期レイテンシはライズ時間だけでなく、デジタルフィルターやタイミングパラメータ設定にも影響を受けるからです。

プロジェクトで実際に使用されている構成を読み、RT1064リファレンスマニュアル第47章の表47-5「LPI2C例タイミング構成」と比較することをお勧めします。

特に、選択したクロック条件における以下の設定が、サンプル値と一致しているかどうかを確認してください。

  • I2Cモジュールクロックソース
  • 目標ボーレート:400Kbps
  • PRESCALE
  • FILTSCL / FILTSDA
  • セソルド
  • クロックロ
  • CLKHI
  • データビデオ

お役に立てれば幸いです。

よろしくお願いいたします。

5月

Re: RT1064 I2C communication abnormality at 400kHz


追加情報として、昨日ポジショニングにいくつかの進展がありました:
ハードウェア拡張は以下の通りです:
マザーボード:RT1064--- ADUM1251 3.3V~5V
サブボード:ADUM1251 - モジュールA 5V~3.3V
検証の結果、ハードウェアリンクの2層にADUM1251を追加した後、モジュールAで通信異常が発生したことが判明した。しかし、ADUM1251を取り外すと、400kで通信が正常に戻った。その理由は何でしょうか?
追伸:ハードウェアエンジニアは、ADUM1251は通信レイテンシを増加させるだけで、それ以外には影響がないと考えています

Re: RT1064 I2C communication abnormality at 400kHzこんにちは、@mayliu1
当社の製品はまもなくリリースされ、数日間この問題を調査してきました。できるだけ早くご返信いただければ、大変ありがたいです!
Re: RT1064 I2C communication abnormality at 400kHz

ハイ

補足情報
1.2人のハードウェアエンジニアはオシロスコープで問題の波形を確認し、上昇時間は100+ns以内の要件を満たしました
2. I2Cの初期化および読み書き機能ドライバを別のタイプのRT1064デバイスに移植し、モジュールAを問題なくテストしました
以下の図は、別のデバイスモジュールAの波形を示しています。テスト用ロジックアナライザー

foreverwlh2025_0-1782194338022.png


疑い:
1.ストレッチ後に時計が異常に回復するなら、他にどんな理由が考えられますか
2. 前回の返信で言及されたMCFGR2のような設定設定専用機能はありますか?I2C初期化プロセスで設定するインターフェースは見当たりませんでした
----上昇時間が満たされた場合、これらのレジスタ設定を考慮する必要はないのでしょうか?

Re: RT1064 I2C communication abnormality at 400kHz

こんにちは、 @foreverwlh2025 さん

私たちの製品にご関心を寄せ、コミュニティをご利用いただき、本当にありがとうございます。

これはモジュールAの問題ではなく、その特定のRT1064 LPI2C2バスの400 kHzのタイミングマージンの問題だと思います。

RT1064では、LPI2Cのタイミングはバスの上昇時間、バス負荷、プルアップ抵抗、グリッチフィルタ レイテンシの影響を受けます。

リファレンス・マニュアルRT1064RMでは、上昇時間が長いと同期レイテンシが増加すると説明されています。(第47.3.1.4章を参照)タイミングパラメータ)

マスターグリッチフィルターMCFGR2[FILTSCL/FILTSDA]は、**レイテンシ**がSCLの最低ロー/ハイ期間を下回るように設定されなければならず、RT1064はMCCR0/MCCR1の400 kbpsタイミング設定の例を提供しています。表47-5をご確認ください。LPI2Cのタイミング構成例

mayliu1_0-1782186916949.png

したがって、モジュールAがバスエッジをわずかに遅くしたり、実効負荷を変えたりすると、バスは400kHzで故障しても100kHzでは動作し続けることがあります。


お役に立てれば幸いです。

よろしくお願いいたします。

5月

Tags (1)
No ratings
Version history
Last update:
Friday
Updated by: