1931730_ja-JP

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

1931730_ja-JP

1931730_ja-JP

S32K344 sCheck unistall ISR の後に SAF SWT0 ISR がトリガーされました。

私はRTD V4.0.0でS32 SAF V1.0.4のサンプルコードを試してみました


1.システムは、sCheck xbicテスト(SWT0カウントテストの次のテスト)中にISR_SWT0を入力します(スクリーンショット1を参照してください)

2. SWT0テストにブレークポイントを追加しようとしています。すべてのカウントが通過しました(スクリーンショット2)。 ただし、SWT0のアンインストール後にトリガーされたISRを確認してください(スクリーンショット3)


何か提案があれば聞いてもいいですか?


sifan_0-1723619495464.pngスクリーンショット1

sifan_1-1723619709590.pngスクリーンショット2

sifan_2-1723620240591.png

スクリーンショット3




Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

Hi RadoslavB

私の営業サポートチームから、RTM 1.0.2 以降の SWT0 のバグがあると言われました、および RTM 1.0.4修正されていません。


あなたの助けをありがとう。

Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

こんにちはSifan、

デバッグセッション中にセットアップを確認する必要があります。
デバッグセッションを手配できるように、NXPセールスフォースシステムを介して私に連絡してください。

Kind Regards,
Radoslav

Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

Hi RadoslavB

1.はい、デモの例であり、構成では変更されません。startup & ld ファイルが IAR 形式に更新されました

2.最初の行にブレークポインタSWT0_ISRを追加しようとしましたが、再度再起動します& これは、ISRハンドラがないためSWT0タイムアウトが原因であるようです(ブレークポイントで停止します

3.トラップにぶら下がっているとき、WENはゼロSWT0_ISR。

4. EB経由でSWT0チェックを無効にしようとしましたが、システムがSWT0 ISRに入りません。

Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

こんにちはSifan、

私の理解が正しければ、SAFデモの例を実行していますが、コードや構成を変更しましたか?

私の側では、デモの例でS32K344 SWT0ハンドラは予想通りテスト中に一度だけトリガーされます。私は常にFRZ = 0を持っています。

SWT0ハンドラ内にブレークポイントを設定できる場合、最初に意図的なブレークストップは、forループ中のsCheck_Swt_CounterTestRun()の実行中に行う必要があります。SWT0 は Check_Swt_CounterBitCycle() 内で有効または無効になるため、その部分以外では SWT IRQ はトリガーされません。
WENビットが本当にゼロになっているか、SWT0割り込みルーチンを離れた後もSWT0割り込み保留ビットが設定されているかを確認できます。

敬具
ラドスラフ

Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

Hi RadoslavB


1. SWT0はテスト前に無効になります。また、問題が発生したときには無効になります。

2. AIPS_SLOW_CLK周波数は40Mです。

3. はい、FRZビットはSAF Demo V1.0.4と同じ0に設定されています。デバッガなしで、またはブレークポイントなしで実行しようとすると、システムはSWT0 ISRの「whileトラップ」でもハングします。

Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

こんにちはSifan、

sCheckは、ドライブサイクルごとに1回だけテストを実行するだけISO26262ため、起動とランタイム/シャットダウンの両方で実行する必要はありません。

テストの前に、SWT0 CRレジスタが本当にディスエーブルになっているかどうか確認していただけますか?
SBAF bootrom は、Boot Configuration Word のビット APP_SWT_INIT で SWT0 が有効になっている場合、SWT0 を有効にするためです。SAF Demoは起動時にSWT0を無効にする必要がありますが、再確認してください。

sCheck Tresosで選択したSTMインスタンスが、RTD MCUドライバで設定されているものと本当に同じかどうかを確認してください

RadoslavB_0-1723715201924.png

RadoslavB_1-1723715362550.png


また、RTD MCU(CGM0_MUX0)のAIPS_SLOW_CLK周波数も確認してください。

SWT0 をディスエーブルにしているときには、割り込みをトリガーしないでください (テスト前に実際にディスエーブルになっていた場合)。

編集:
SAF Demoの起動からSWT0設定を使用している場合、デバッグ・ブレーク中でもSWT0が動作していることを意味するFZRビットseが0になっているため、sCheckリストア機能の前にブレークポイントがあると、デバッグを続けるとすぐにタイマが切れて割り込みが発生することがあります。
テスト目的で、図に示すように値を変更することにより、起動時にビット設定を 1 に手動で変更できます。

RadoslavB_0-1723722171863.png

または、RTD WDG 設定と、示されているオプションをオフにして使用します。

RadoslavB_1-1723722230071.png

ただし、量産コードでは、FRZ ビット se を 0 にする必要がありますが、これは NXP が推奨する安全構成であるため、sBoot モジュールによってもチェックされます。




Kind Regards,
Radoslav

Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

Hi RadoslavB


1. SWT0 テストを Starup & Runtime として実行しています

2.これは、毎回100%発生していないことを保証します。そのため、スタートアップは成功する可能性がありますが、実行時には常に続行テストの下でISRトラップにハングします。

3.SWT0 を有効にしていません。それを Up & Running に設定しません。ランタイムでテストするだけです continue test.


SWTの無効化(sCheck swtカウントテストを行った場合)とSWT割り込みが同時に来ることが原因かと思います。S32Kは割り込みを処理する前にISRをアンインストールする時間がほとんどありません。


Re:S32K344 SAF SWT0 ISRは、sCheck unistall ISRの後にトリガーされました。

こんにちはSifan、

SWT0テストをStarupまたはRuntime/Shutdownとして実行していますか?

スタートアップテストの場合、sCheckはSWTを復元します。CRレジスタであるため、SWT0が無効になっている場合は、テスト後にも無効にし、割り込みをトリガーしないようにする必要があります。

ランタイム/シャットダウンでSWT0テストを実行している場合は、SWT0を構成済みであるため、SWT0を更新して実行している必要があるため、SWT0を更新するためのハンドラも実装しているはずです。この場合は、割り込みハンドラを更新し、whileトラップをSWT0をリフレッシュするルーチンに置き換えてください。


敬具
ラドスラフ

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎01-05-2026 05:58 AM
更新者: