大家好,
最近我正在调试基于SDK 的S32K144 进入VLPS低功耗的休眠模式,但是由于设置问题,低功耗设置一直存在问题,想请教大神有没有可解决方案,
以下是我的设置:
1.关闭LPIT计时器,
2.关闭CAN的控制器以及SPI模块
3.关闭UART收发模块
4.关闭看门狗模块
5.设置IO口输出,并设置PORTE 口上升沿触发
6.进入低功耗模式
Hello owner,
where to find the RTM3.0 API reference manual
VLPS 是否支持 CAN Weke Up?
Hello,
If you use SDK, you can use the power manager driver.
There is this power_mode_switch_s32k144 SDK example for your reference.
The POWER_SYS_SetMode(VLPS, …) function switches the system clock to SIRC and disables SOSC, SPLL, FIRC automatically which is required.
I don’t see this is the steps you posted.
Regards,
Daniel
Hello Daniel,
I have disable all module used,and used POWER_SYS_SetMode() to enter vlps power, however, the current consumption is 5mA Excludes external circuit factors.
1.Can POWER_SYS_SetMode() switch the system clock to SIRC and disables SOSC, SPLL?
2.how to switch the system clock to SIRC and disables SOSC, SPLL
Hello,
Which SDK version do you use?
In RTM 3.0.0 and newer versions, the POWER_SYS_SetMode(VLPS, ..) function disables SOSC, SPLL, FIRC and switches to SIRC.
If you don't use SDK, you can refer to
Example S32K144 RTC VLPS
https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K144-RTC-VLPS/ta-p/1119655
Can you disconnect the debugger, power-cycle the MCU, and then measure the consumption?
Thank you,
BR, Daniel
and following is my Code
void gpio_can_wakeup_set(void)/*C2*/
{
GPIO_CAN_RX_INPUT();
PINS_DRV_EnableDigitalFilter(GPIO_CAN_WAKE_PORT,GPIO_CAN_WAKE_PIN);
INT_SYS_EnableIRQ(PORTC_IRQn);
INT_SYS_InstallHandler(PORTC_IRQn, &gpio_portc_irq, (isr_t *)0);
PINS_DRV_SetPinIntSel(GPIO_CAN_WAKE_PORT,GPIO_CAN_WAKE_PIN,PORT_INT_FALLING_EDGE);
INT_SYS_ClearPending(PORTC_IRQn);
}
Hello Denial,
The Project is based on RTM 3.0.0 ,So How to trigger the falling edge of CAN rxd to wake up, what items need to be configured?Do you only need to enable the digital input function of the corresponding rx pin
thanks
Hi,
There is no need to reconfigure the MUX to GPIO as the pin interrupt works with all the digital functions of the pin.
You just need to enable the interrupt in the PORT module and in NVIC.
Regards,
Daniel