2403637_ja-JP

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

2403637_ja-JP

2403637_ja-JP

FS2400の起動後の消費電流

こんにちは、専門家さん:

私のチップはS32K312で、SBCはFS2400です。

今度はチップを起動させる必要があるのですが、起動ソースはGPIOの立ち下がりエッジです。

S32K312をスタンバイ状態にする前に、FS2400をLPONモードに設定しました。

/* レジスタ M_WU1_EN : フィールド CAN_WUEN をウェイクアップおよび割り込み(03)に設定 */

Sbc_FS24_Ip_WriteRegister (0, SBC_FS24_IP_M_WU1_EN_ADDR, SBC_FS24_IP_M_CAN_WUEN_MASK );

/* レジスタ M_IOWU_EN : フィールド WAKE2、WAKE3、HVIO1 をウェイクアップおよび割り込みなし(00) に設定 */

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_IOWU_EN_ADDR, 0x00);

/* レジスタM_CAN : 送信されたCAN MODEはトランシーバ受信のみモードに設定されています */

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_CAN_ADDR, SBC_FS24_IP_M_CAN_MODE_RX_ONLY);

/* LPONモードに移行 */

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_SYS_CFG_ADDR, SBC_FS24_IP_M_GO2LPON_MASK)


起動後、SBCを通常モードに設定しました。

Lpspi_Ip_Init(&Lpspi_Ip_PhyUnitConfig_SpiPhyUnit_SBC_Instance_0);

Sbc_FS24_Ip_InitDriver(&Sbc_FS24_Ip_Config);

Sbc_FS24_Ip_InitDevice(SBC_FS24_DEVICE_ID);

eReturnValue = Sbc_FS24_Ip_CanTrcvSetState(SBC_FS24_DEVICE_ID, SBC_FS24_CANTRCV_STATE_ACTIVE );

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_SYS_CFG_ADDR, SBC_FS24_IP_M_GO2NORMAL_MASK);


電流消費量は54mAでしたが、PORの電流消費量は72mAでした。


スタンバイ状態になる前にSBCに対して何も操作を行わない場合、ウェイクアップ後の消費電流はPORと同じです。

SOの状態が何か問題だと思いますが、なぜか教えてもらえますか?


Re: FS2400 current consumption after wakeup

こんにちは、ピンクマン

良い一日!

ご説明いただいた動作から判断すると、FS2400が必ずしも「フリーズ」しているわけではないと思いますが、LPONから復帰した後、SBCがPOR後と全く同じ構成/状態に戻っていない可能性が非常に高いです。

データシートによると、LPONからのウェイクアップは、ウェイクアップシーケンスを経てデバイスを直接ノーマルモードに戻すとのことです。LPONウェイクアップ後、デバイスは自動的にINIT状態に再移行しません。

また、 デバイスがINIT状態でLPON、LPOFF、またはフェイルセーフモードに入ると、デバイスはINIT状態のままになり、デバイスの誤構成につながる可能性があります。LPONまたはLPOFFモードに入る前に、M_STATUSレジスタのINIT_Sステータスビットを読み取ることが推奨され、デバイスがINIT状態でない場合のみ行うことが推奨されます


両方の場合、以下のレジスタ(PORパスとLPONウェイクアップパス)をキャプチャして比較します。

M_STATUS

M_SYS_CFG

M_CAN

M_SYS1_CFG

M_REG_CTRL

M_IOWU_EN

M_WU1_EN


この情報がお役に立てば幸いです。他に何かご不明な点がありましたら、お気軽にお問い合わせください。

良い一日をお過ごしください。幸運を祈ります。

Re: FS2400 current consumption after wakeup

こんにちは : RafaR

ご提案に基づき、POR時とウェイクアップ時のFS2400レジスタを比較しました。POR実行中はレジスタM_REG_CTRLの値が0x04であるのに対し、ウェイクアップ後はレジスタM_REG_CTRLの値が0x1304になっていることが分かりました。この発見に基づき、原因を関数 Sbc_FS24_Ip_InitDevice → Sbc_FS24_Ip_OptionalInitSequence → Sbc_FS24_Ip_InitMain にたどったところ、そこで M_REG_CTRL に対する操作が行われていることがわかりました。ただし、この関数には、SBC_FS24_NORMAL == ePowState という前提条件があります。したがって、POR中はこの関数を実行できますが、ウェイクアップ時にはSbc_FS24_Ip_InitDevice後にGOTONORMALが実行されるため、この機能は実行できず、消費電力の差が生じます。

そこで、2つの質問があります。
1.Sbc_FS24_Ip_InitDeviceは必須ですか?初期化時に呼び出さなくても、CANメッセージの送信・受信や電源供給は問題なく動作することがわかりました。
2.この消費電力の差は主にどこから生じるのでしょうか?

Tags (1)
No ratings
Version history
Last update:
Friday
Updated by: