2411657_ja-JP

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2411657_ja-JP

2411657_ja-JP

S32K314 HSE設置に関する問題

助けてください!公式デモプロジェクトをベースにHSEファームウェアインストーラを作成しましたが、2回リセットした後、HSEインストールアドレス0x007E0000にデータがありません。これはHSEのインストールが失敗したということでしょうか?S32のバージョンは3.6.8で、チップは...S32K314、RTDバージョン7.0.1

1131_0-1788767775138.png1131_0-1788767775138.png1131_0-1788767775138.png

これはldファイルです。

1131_1-1788767805874.png1131_1-1788767805874.png1131_1-1788767805874.png


これは書き換えられたIVTベクトルです。

1131_2-1788767830677.png1131_2-1788767830677.png1131_2-1788767830677.png 1131_3-1788767849116.png1131_3-1788767849116.png1131_3-1788767849116.png 1131_4-1788767872384.png1131_4-1788767872384.png1131_4-1788767872384.png

最後に、HSEインストールデモプロジェクトを添付しました。

回复: S32K314 HSE 安装问题

@VaneBこんにちは

ご提案に従ってリンカー ファイルを修正し、ivt.c ファイルのすべてのエントリをコメントアウトしました。プログラムを 2 回再起動した後、デバッグ モードで status = Hse_Ip_GetHseStatus(0u) の状態を確認しました。ステータス値は 1001 0110 0000 でしたが、9 番目のビットが 0 だったので、HSE が正常にインストールされなかったことを示しています。さらに、バージョン情報も取得できませんでした。srvResponse = Hse_Ip_ServiceRequest(0u, u8MuChannel, &request, &pHseSrvDesc) の戻り値は 0xaa55a11e です。

次のように

1131_1-1788838145743.png1131_1-1788838145743.png1131_1-1788838145743.png

1131_2-1788838165453.png1131_2-1788838165453.png1131_2-1788838165453.png

1131_3-1788838180700.png1131_3-1788838180700.png1131_3-1788838180700.png 1131_4-1788838213520.png1131_4-1788838213520.png1131_4-1788838213520.png


Re: S32K314 HSE 安装问题

こんにちは@杨工1131

いくつか気づいた点があります。

  • リンカファイル内のコメントによると、HSEファームウェアはブロック0に配置されるべきです。しかし、現在HSE_BINARYに割り当てられているアドレスはブロック1に属しています。次のように設定する必要があります
HSE_BINARY (R) : ORIGIN = 0x00400000
  • PFlash領域はブロック1から開始する必要があります。
int_pflash : ORIGIN = 0x00500000, LENGTH = 0x00300000 - __HSE_CODE_SIZE /* 4096KB - __HSE_CODE_SIZE (sBAF + HSE) */
  • 提案として、ハードコードされたアドレスを使う代わりに、HSE_FW_ADDR を次のように定義することができます。
#define HSE_FW_ADDR (__HSE_BIN_START)
  • 別途ivt.cファイルを作成する必要はありません。画像ベクトルテーブル構造は、 Project_Settings → Startup_Code → startup_cm7.sで既に定義されています。
  • IVTに関しては、S32K3xxリファレンス・マニュアル改訂版12のセクション32.5.3を参照すると、CM7_2開始住所の後に続く記述は以下の通りです。
.long 0xffffffff      /* Offset 0x20: Reserved */
.long LC_CONFIG_ADDR  /* Offset 0x24: Lifecycle configuration pointer */
.long CM7_3_VTOR_ADDR /* Offset 0x28: CM7_3 Start address */
.long HSE_FW_ADDR     /* Offset 0x2C: Reserved */

コードについては、例と同じ構造を使っているので、その部分で問題はないと思います。


BR、VaneB

タグ(1)
評価なし
バージョン履歴
最終更新日:
昨日
更新者: