I have ESP32-Solo-1 with button, connected GND-BUTTON-GPIO2.
So, the problem, how to wakeup main processor with rising of GPIO2 from ULP?
Tried ~R0, !R0, no effect.
Falling works fine.
The code is:
Code: Select all
rtc_gpio_init(GPIO_NUM_2);
rtc_gpio_set_direction(GPIO_NUM_2, RTC_GPIO_MODE_INPUT_OUTPUT);
rtc_gpio_set_level(GPIO_NUM_2, 1);
rtc_gpio_pullup_en(GPIO_NUM_2);
rtc_gpio_hold_en(GPIO_NUM_2);
Code: Select all
#define I_CLEAR_R() \
I_MOVI(R0, 0), \
I_MOVI(R1, 0), \
I_MOVI(R2, 0), \
I_MOVI(R3, 0)
...
M_LABEL(15),
I_CLEAR_R(),
I_RD_REG(RTC_GPIO_IN_REG, RTCIO_GPIO2_CHANNEL + 14, RTCIO_GPIO2_CHANNEL + 14),
I_ANDI(R0, R0, 1),
I_MOVI(R0, ~R0),
M_BL(10,1),
M_LABEL(10),
I_WAKE(),