GPIOレベルの高速読み取りと書き込み

Tip / ログイン to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは

GPIOピンを意図しない方法で使用している可能性のあるものを試しています。 しかし、現在、制限が正確にどこにあるのかわからないので、これが機能するかどうか、そしてどのように機能するかについての入力を求めたかったのです。

  • TDA5235_868_5_BOARDAURIX™TC397 を 4 本のワイヤで接続して MMIC_A (通常は QSPI マスターとして) があります。
  • デバッグの目的で、このMMIC_Aと通信しますが、 AURIX™ QSPI モジュールを使用せずに (ソフトウェア環境により適切に統合されている別の SPI マスターを使用)
  • 最下層または最上層にはんだ付けに使用できる信号線やビアがないため、SPIラインにハードウェアでアクセスすることはできません。 ピンは露出していません。
  • TC397のGPIOラインとDAPインターフェースは4本のみです。

この考え方は、CPUを使用して、SPI通信に必要なタイミングを維持しながら、入力をwhileループで読み出し、ロジックレベルを可能な限り高速に出力にコピーすることです。

添付されたコードで試してみました(1つのファイルで十分であることを願っていますが、残りはLibrary / iLLDからのものです)

  • Cpu0_main.c
    • システムおよびCPUのクロック速度は最大300MHzです。 理論的には、1〜25MHzの信号をサンプリングするのに十分です。
    • 入出力EVAL_BDPS_DRIVERの初期化
    • 3つの入力の論理レベルを3つの出力にコピーするためのWhileループ
  • clock_in_vs_clock_out.png
    • オシロスコープでクロック入力と出力を観察する30倍ループ実行

現在、KIT_A2G_TC387_MOTORCTR 前述の でテストする前に、TDA5235_915_5_BOARD でテストしています。

オシロスコープ(付属)でクロック入力と出力を30回ループして観察したところ、入力と出力の間の遅延が予想よりも大きく、一貫性がないことがわかりました。 立ち上がりエッジとハイタイムはループ実行ごとに変化するため、SPI通信は不可能です。

CPUが実際に300MHzで実行されているかどうかをもう一度確認する必要があるかもしれませんが、方法はまだわかりません。

そのようなGPIOレベルの読み取りと書き込みは不適切な使用であり、固有の遅延がある可能性はありますか?

親切に提案を求めます。

 

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/fast-reading-and-writing-of-GPIO-levels/td-p/683800

0 件の賞賛
0 返答(返信)