Is there a good example or apnote on the proper use of sleep on exit from an IRQ?
Do I need the Data Synchronization Barrier instruction? (to ensure sleep)
here is some pseudo code, this does appear to work fine. I can see the main loop run once on exit without the "LL_LPM_EnableSleepOnExit()" and the intended result (no main loop cycle) with it enabled.
I'm not using the HAL in this application, just the LL interface.
/* Manage Flags */
if(LL_EXTI_IsActiveFlag_0_31(LL_EXTI_LINE_4) != RESET)
/* Clear EXTI flag */