ZHCUAR3 February 2023 LP8764-Q1 , TPS6594-Q1
如GUID-5B8BB447-89E7-41CE-B027-EFCDDF7D4CBA.html#GUID-5B8BB447-89E7-41CE-B027-EFCDDF7D4CBA 所示,MCU 已断电,因此必须在进入保持状态前配置从保持状态到仅 MCU 或运行状态的转换。与仅 MCU 状态类似,必须为两个 TPS6594-Q1 PMIC 设置 I2C_7 触发条件。本例中使用 TPS65941120 上的 GPIO4 来从保持状态唤醒器件并进入运行状态。
Write 0x48:0x85:0x80:0x7F // I2C_7 is high
Write 0x4C:0x85:0x80:0x7F
Write 0x48:0x34:0xC0;0x3F // Set GPIO4 to WKUP1 (goes to ACTIVE state)
Write 0x48:0x64:0x08:0xF7 // clear interrupt of gpio4, write to clear
Write 0x48:0x4F:0x00:0xF7 // unmask interrupt for GPIO4 falling edge
Write 0x48:0x86:0x00:0xFC // trigger the TO_RETENTION power sequence
After the GPIO4 has gone low and the PMICs have returned to the ACTIVE state
Write 0x48:0x86:0x03:0xFC // Set NSLEEPx bits for ACTIVE state
Write 0x48:0x64:0x08:0xF7 // clear interrupt of gpio4
Write 0x4C:0x3D:0x00:0xFD // clear PMICB:GPIO2, DDR_RET
本例中使用 TPS65941120 RTC 计时器来从保持状态唤醒器件并进入运行状态。
Write 0x48:0x85:0x80:0x7F // I2C_7 is high
Write 0x4C:0x85:0x80:0x7F
Write 0x48:0xC3:0x01;0xFE // Enable Crystal
Write 0x48:0xC5:0x05:0xF8 // minute timer, enable TIMER interrupts
Write 0x48:0xC2:0x01:0xFE // start timer, if the timer values are non-zero clear before starting
Write 0x48:0x86:0x00:0xFC // trigger the TO_RETENTION power sequence
After the RTC Timer interrupt has occurred and the PMICs have returned to the ACTIVE state
Write 0x48:0x86:0x03:0xFC // Set NSLEEPx bits for ACTIVE state
Write 0x48:0xC5:0x00:0xFB // disable timer interrupt, clear bit 2
Write 0x48:0xC4:0x00:0xDF // clear timer interrupt, clear bit 5