2413830_en-US

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

2413830_en-US

2413830_en-US

S32K358 FAST STANDBY

Hello,

I would like to test Fast Standby on the S32K358. I created an IP-layer demo in S32DS where the program enters Fast Standby 5 seconds after startup and is woken up by RTC-API after 3 seconds. This works without any issues.

Then I referred to this project and configured an EB project to create an MCAL-layer demo, but it failed. After 3 seconds in Fast Standby, the current increased, which suggests the device woke up, but it never entered the main function. After attaching with PE Micro, the error messages are as follows:

Interrupt command received. Halting execution.

UsageFault: An instruction executed with an invalid EPSR.T or EPSR.IT field.

BusFault: An imprecise (asynchronous) data access error has occurred.

HardFault: A fault has been escalated to a hard fault.

The vector table after wake-up is shown below:

1.png1.png1.png

The PC register is 0x0. Checking the stack contents, I can see that FastWkup_EntryAddress was entered, and the HardFault occurs after jumping to the Reset_Handler.

2.png2.png2.png

3.png3.png3.png

4.png4.png4.png

If I add a while(1) loop in FastWkup_EntryAddress, the HardFault still occurs.

5.png5.png5.png
If I enter standby mode, it word.

In the project, PMIC_PGOOD_HNDSHK_BYP is enabled. Since the board does not have an external crystal oscillator, FIRC is used as the core clock.

S32K358

RTD6.0.0

S32DS3.6.3

EB29.0


BR,

Jason

Re: S32K358 FAST STANDBY

Hello @Jason07,

On Fast Standby wakeup, the sBAF sets VTOR to your custom vector table address.
However, your vector table only defines three entries:

Initial SP,

Reset Handler (FastWkup_EntryAddress),

NMI Handler.

So the HardFault vector is missing.
When any fault occurs, the CPU fetches the not defined HardFault handler address, which could explain the observed PC value.

To debug this further, please add a proper HardFault handler to the vector table. Once those are in place, the handler will be invoked instead of crashing to 0x0, giving you access to the stacked PC, LR, and the Configurable Fault Status Register (CFSR/BFAR) of the original fault.


Thank you,

BR, Daniel

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