1955511_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

1955511_ja-JP

1955511_ja-JP

Sbc_fs26_InitDevice(); 初期化中にRTD関数が失敗しました

こんにちは、

私たちは設計上、SDK ver 4.0.0でFS2600とS32K3を使用しています。および S32DS バージョン 3.5 ビルド ID: 240726、アップデート 13。OSとしてFreeRTOSが使用されています。

初期化中に、このコードが呼び出されます。

Std_ReturnType initFs26Driver()
{
    Std_ReturnType retVal       = E_NOT_OK;

    /* Initializes the FS26 driver */
	retVal = Sbc_fs26_Init(&Sbc_fs26_xConfig_BOARD_InitPeripherals);
    if (retVal != E_OK)
    {
        return retVal;
    }

    /* Configures the device */
    retVal |= Sbc_fs26_InitDevice();
    if (retVal != E_OK)
    {
        return retVal;
    }

    /* Fault Error Counter should decrease to zero */
    uint8 u8FaultErrorCounterValue = 0U;
    retVal |= Sbc_fs26_GetFaultErrorCounterValue(&u8FaultErrorCounterValue);
    if ((retVal != E_OK) || (u8FaultErrorCounterValue != 0U))
    {
        return retVal;
    }

    /* Sbc device should be in FS_STATES_FS0B_ASSERT */
    Sbc_fs26_RxFrameType rxData = {0};
    retVal |= Sbc_fs26_ReadRegister(TRUE, SBC_FS26_FS_STATES_ADDR, &rxData);
	if((retVal != E_OK) || ((rxData.u16ReadData & SBC_FS26_FS_FS_STATES_MASK) != SBC_FS26_FS_FS_STATES_FS0B_ASSERT))
	{
		return retVal;
	}

    return E_OK;
}

Sbc_fs26_InitDevice() 関数でエラーが発生します。具体的には、Sbc_fs26_WaitInitFSClosed() -> Sbc_fs26_WaitInitFSClosed() でエラーが発生します。

InitFS は閉じられておらず、Sbc_fs26_GetDeviceState は FS_STATES_INIT_FS を返します。これは、画像 DeviceStateisInitFs.JPG に示されています。

使用した設定ファイルを添付しました。なぜこれが失敗しているのか教えてもらえますか?

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


Re: Sbc_fs26_InitDevice(); RTD function failed during Initialisation

@Kazarian さん、この問題は解決できましたか?
Sbc_fs26_InitDeviceの実行中に、FS26チップがFS0B_ASSERT状態からNORMAL_FS状態に移行できなかった主な原因は何でしたか?
ありがとう。

Re: Sbc_fs26_InitDevice(); RTD function failed during Initialisation

こんにちは

私はソフトウェアエンジニアではなく、FS26のみをサポートしています。FS26がノーマルモードに入るには下の写真をご覧ください。ドライブをステップバイステップで照合して動作を確認します。


guoweisun_0-1727054262186.pngguoweisun_0-1727054262186.pngguoweisun_0-1727054262186.png


Re: Sbc_fs26_InitDevice(); RTD function failed during Initialisation

こんにちは@guoweisun

RTD API を使用しています。RTD の関数 Sbc_fs26_InitDevice(); は既にあなたが言及したロジックを実装していますが、

/* Close initialization phase by sending first watchdog refresh. */
eReturnValue = Sbc_fs26_WdRefresh();

は呼び出されず、Sbc_fs26_WaitInitFSClosed() はステータス エラー 0x1 を返します。設定が間違っている可能性はありますか?

Kazarian_0-1726826557141.pngKazarian_0-1726826557141.pngKazarian_0-1726826557141.png


Re: Sbc_fs26_InitDevice(); RTD function failed during Initialisation

ハイ

INITフェーズでは、故障エラーカウントをゼロにするためにWDをリフレッシュし、その後閉じる必要があります。WDの供給が間違っているか正しいか確認してもらえますか?




Re: Sbc_fs26_InitDevice(); RTD function failed during Initialisation

NXPチームの皆様、こんにちは。

上記の話題について何か進展はありますか?

ありがとうございます。

Re: Sbc_fs26_InitDevice(); RTD function failed during Initialisation

最初の投稿に関連する画像を添付しました

Tags (1)
No ratings
Version history
Last update:
a week ago
Updated by: