こんにちは、グルさん!
私はカスタム iMXRT1176 ボードに取り組んでいます。Zephyr は正常に実行されており、すべて順調ですが、シリアル ダウンローダー ブート ROM は LPUART1 ではなく、USB を使用してのみ動作させることができます。
LPUART1 が Zephyr で動作することを確認しましたが、シリアル ダウンローダー モード (有効なブート メディアなし) でシステムを再起動すると、USB 経由で blhost を使用してのみ通信できます。
LPUART1 が MAX3490 RS422 トランシーバに接続されているという詳細がありますが、接続は Zephyr では透過的に動作します。(エコーテスト成功)
ブートローダ モードでは、RX ピンはハイですが、TX ピンはローであることに気づきました。これは異常なようです。
RT1176 はどのようにして UART を「検出」し、オンチップ ブート ROM からのシリアル ダウンロードを有効にするのでしょうか?
こんにちは@anbnさん、
このボードのヒューズが切れていませんか?もっと具体的に言うと、UART_SDP_DISABLE が壊れているのでしょうか?
再度ご連絡いただきありがとうございます。
それで解決したと思います。
GPIO_AD_24/25 を二重にチェックしたと確信していましたが、三度チェックしたところ、LPUART1 が他の場所にマップされており、GPIO_AD24/25 は実際には LPSPI2 SCK と CS0 として多重化されていることが判明しました。
幸運なことに、偶然にもそれらはボード外の未使用コネクタにマッピングされていました。
これらのピンに SDP があるかどうかを確認し、明日確認します。
ご回答をよろしくお願いします。
こんにちは@anbnさん、
Zephyr で LPUART1 の機能を確認したことは承知していますが、LPUART1 SDP ブートにデフォルトのピンを使用しているかどうかを確認していただけますか?
これらは、ROM ブートローダが SDP 通信が利用可能かどうかを確認する唯一のピンです。LPUART1 を他のピンと併用している場合、LPUART1 との実行時通信は機能しますが、ブート時通信は機能しません。
正しいピンを使用している場合、ブートフローのプロセス中に RS422 トランシーバーが問題を引き起こしている可能性があります。リセット中に通信回線が IDLE 状態で安定していない場合、ROM ブートローダは LPUART1 を SDP 通信に使用できないと認識し、USB にスキップする可能性があります。
BR、
エドウィン。
上記の私の投稿があなたへの返信として表示されないのはなぜか分かりません。