AnsweredAssumed Answered

Why FCCU is not disable the Output PINs by cleared SIUL2[SMC]?

Question asked by rolanddorn on May 23, 2018
Latest reply on May 24, 2018 by Phil Pesses

  Hi,

 

 

I want to use FCCU in test mode 0 (FCCU_F0 = Intput and FCCU_F0 = Output) in order to deactivate some output PINs.

Used state transition: Normal -> Fault. Used controller: S32V234

 

According to the capital "3.6.1 Disabling of communication controllers" of the "Safety Manual for S32V234 (Rev. 3, 10/2017)" :

"When the FCCU intends to drive
FCCU_F0 to a fault condition, the SIUL2 disables the output buffer of such pins for
which SIUL2_MSCRn[SMC] is cleared and thus disables transmission of erroneous
messages until FCCU intends to drive FCCU_F0 to a non-fault condition. After a
communication controller transmission port is disabled, it remains in the same state as
long as the FCCU drives FCCU_F0 to a non-fault condition. During this mode, the state
of weak pull-up/pull-down remain unchanged."

 

Well, I can put FCCU into fault state, but after FCCU is in fault state the configured output PORTs will be not disabled. 

Maybe I forgot to configure some bits needed to the PORT deactivation.

Do you have maybe some idea which bits shall I check?

 

PORT - configuration:

- I use PB6 as Output. Output buffer is enabled. Input buffer is disabled. SMC bit is cleared ("To drive pad in hi-z state using OBE = 0, when FCCU in fault state. The OBE will be driven by IP/SIUL when FCCU leaves the fault state." ). Bit OBE is set to 0.

I am able to drive the output from the debugger.

 

FCCU - configuration:

FCCU.CTRL = 0x800000c0

FCCU.CFG[0-3] = 0xFFFFFFFF

FCCU.NCF_CFG

FCCU.NCFS_CFG[0-7] = 0

FCCU.NCF_S[0-3] = 0 in case any error is present

FCCU.NCF_E[1] = 0x00101000

FCCU.NCF_E[0,2,3] = 0

FCCU.NCF_TOE[1] = 0

FCCU.NCF_TOE[0,2,3] = 0xFFFFFFFF

FCCU.NMI_EN[1] = 0xFFFFFFFF

FCCU.NMI_EN[0,2,3] = 0

FCCU.IRQ_ALARM_EN[0-3] = 0

FCCU.EOUT_SIG_EN[0-3] = 0

Outcomes