こんにちは、
HSE ファームウェアのインストールサンプル コードを s32K312 に移植しました。
MCU をフラッシュした後、HSE ファームウェアをインストールしてデバッグ モードで実行することはできますが、プロジェクトの 16 進ファイルを直接フラッシュすると、MCU をリセットした後にメインにジャンプしないため、ファームウェアがインストールされないという問題が発生します。
IVT を使用したインストールを使用しています。リンカーファイルとboot_header.cをご覧ください。参照用のファイルです。
そして、その解決策を提供します。
S32K312 が 16 進ファイルのフラッシュ後にメインにジャンプしない (ただしデバッグ モードでは動作する) 理由をデバッグするには、いくつかの重要な領域に焦点を当てる必要があります。
IVTとブートヘッダーの構成
IVT/ブートローダーとリンカースクリプトの整合
リセットベクトルとブートエントリの動作
ウォッチドッグのリセットまたは早期障害の可能性
HSE ファームウェアのインストールを IVT に移植し、スタンドアロンの 16 進フラッシュに関する問題について言及しているので、リンカー スクリプトを共有してください。これらを確認すると、設定ミスやセットアップ手順の不足がないか特定するのに役立ちCANます。mymilestonecard.com アクティベート
リセット後にアプリケーションが起動しないが、デバッグ モードで動作するという問題の場合、ほとんどの場合、次の原因が考えられます。
IVT が間違ったリセット ベクトルを指しています
HSEファームウェアアドレスの不一致
リンカーが IVT/boot_header を正しい場所に配置しない
リセットベクターセクションが正しくマップされていません
こんにちは、
私は s32k344 用に提供されたサンプル コードを移植し、確認したところ、リンカー ファイルが s32k344 と同じであることがわかりました。
メッセージにファイルを添付しました。確認して、何が間違っているのか教えてください。
こんにちは、
S32K312 の場合、リンカー ファイルと boot_header.c で IVT とブート構成が正しく設定されていることを確認します。HSE GPR ステータス レジスタをチェックして、ファームウェアが存在するかどうかを確認します。問題が解決しない場合は、不適切な IVT 更新によって起動に失敗する可能性があるため、IVT 更新プロセスを NXP サンプル プロジェクトに合わせてください。
解決策をご提供ください