2402059_ja-JP

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

2402059_ja-JP

2402059_ja-JP

S32K3 FS26 新しいWDG期間が動作しません

こんにちは、

私のボードでは、電源投入リセット後、FS26ウォッチドッグ周期を次のように設定します。 無限 初期化中。その後、デバッグモードを終了してノーマルモードに入ります( SBC_FS26_FS_STATES_ADDR  0xB )。

その後、ウォッチドッグ期間を次のように変更します。 64ミリ秒 (スクリーンショットに示されているように)ウォッチドッグの更新(フィード)を1回実行し、戻り値が成功を示します。 WD_RFR_CNT 1ずつ増加し、 SBC_FS26_FS_WDW_DURATION_ADDR 与える 0xB0CD は、期間が 64 ms に正常に更新されたことを確認します。

しかし、この時点以降に番犬に餌を与えるのをやめると、 エラーやリセットは発生しません

対照的に、ウォッチドッグ周期を64msに設定すると 初期化中 デバッグモードを終了した後、ウォッチドッグにフィードしない する 想定どおりリセットが発生します。

レジスタへの書き込みとリフレッシュの両方が成功しているにもかかわらず、ノーマルモードで周期を無限から64msに変更した場合、ウォッチドッグが有効にならないのはなぜですか?

Jason22_0-1785918605528.png

S32K344 RTD7.0.0

FS26 6.0.0

S32DS3.6.4

EB30.0

BR、

ジェイソン

Re: S32K3 FS26 new WDG period not workこんにちは、
おお!返信時にアカウントを変えるのを忘れていました。Jason07は私の別のアカウントです。
BR、
ジェイソン
Re: S32K3 FS26 new WDG period not work

こんにちは、

ご返信いただき、誠にありがとうございます。

ウォッチ ドッグの期間をこう設定した理由は 初期 化中の無限 とは、ドライバーコードによれば、特定の操作は周期が無限である場合にのみ行われることを意味します。例えば、 Sbc_fs26_InitDevice() 関数の実行中にINIT_FSを閉じ たり、 故障エラーカウンターを消 すために Sbc_fs26_WdRefresh inside Sbc_fs26_ClearFaultErrorCounter を呼び出し たりします。

Jason07_1-1785986004068.png

Jason07_2-1785986074130.png

期間を有限値に設定すると、 Sbc_fs26_WaitFailsafeRelease は Sbc_fs26_FsxbRelease 内で E_NOT_OK を返し、FS26 は FS_STATES_FS0B_ASSERT 状態、移行できない FS_STATES_NORMAL_FS

Jason07_0-1785985959468.png

BR、

ジェイソン


Re: S32K3 FS26 new WDG period not work

こんにちは、

INIT_FSが閉じられた際にウォッチドッグが無効化されたため、ウォッチドッグはアクティブになりません。

WDW_PERIOD[3:0] = 0000 に設定すると、無限に開くウィンドウが選択されます。FS26ウォッチドッグ仕様によると、ウォッチドッグウィンドウは初期化フェーズ中のみ無効化でき、無効化は初期化フェーズが閉じられた時点で有効となります。このように無効化されたウォッチドッグは、有限値をFS_WDW_DURATIONに書き込むことでNORMALモードで有効化することはできません。

レジスタの読み取りが成功したことで、新しいWDW_PERIODフィールドが書き込まれたことが確認され、WD_RFR_CNTの値がインクリメントされたことで、更新が受け入れられたことが確認できます。これらの観測結果は、ウォッチドッグタイムアウト監視が再び有効になったことを示すものではありません。

ウォッチドッグタイマーが初期化時に有限期間で有効化されている場合、実行時における期間変更がサポートされます。したがって、長い初期化間隔が必要な場合は、INIT_FS 中に有限のウォッチドッグ期間を設定してください。たとえば、最大有限期間を 1024 ms に設定してください。ノーマルモードに入ると、周期を64msに変更できます。新しい有限期間は、次回の監視システム更新後に有効になります。

この動作は、初期化時に64msの設定時にリセットが起こる理由も説明しています。この場合、INIT_FSが閉じるとウォッチドッグが有効化されます。

petervlna_0-1785930476258.png

セーフティの観点から、ウォッチドッグ無効化で無限状態に到達します。比較はハードウェアにあり、フラグはマッチ中に必ず上がるからです。

よろしくお願いいたします。

ピーター

Re: S32K3 FS26 new WDG period not work

こんにちは、

観測された動作に基づくと、NORMAL_FSでWDW_PERIODをInfinite Open Windowから64 msに変更した後、FS26ウォッチドッグ監視が開始されないようです。

レジスタへの書き込みは、読み出し値(0xB0CD)によって確認され、WD_RFR_CNTのインクリメントによって示されるように、ウォッチドッグのリフレッシュコマンドは引き続き受け入れられます。しかし、更新が停止された後にウォッチドッグのタイムアウト反応が全く見られないことから、ウォッチドッグ監視自体がアクティブではないことがわかる。


ウォッチドッグ期間が「無限オープンウィンドウ」に設定されている場合、Sbc_fs26_NormalFSSequence() は即時ウォッチドッグ更新を発行して INIT_FS を閉じます。同様に、Sbc_fs26_ClearFaultErrorCounter() は、連続したウォッチドッグのリフレッシュを使用して障害エラーカウンタをクリアします。これは、無限モードではウォッチドッグウィンドウのタイミング制限がないためです。

有限のウォッチドッグ期間を設定すると、ドライバは異なる経路をたどります。ウォッチドッグの更新は有効なウォッチドッグウィンドウと同期されなければならず、ドライバーは連続した即時リフレッシュの代わりにウォッチドッグタイミング機構(pfWdgNotification、タイマー同期、Sbc_fs26_TimeWaitClearFault())を使用します。

petervlna_0-1786002507583.png


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