Hey Oleg,

Are you using the watchdog?

On 27-05-19 07:30, Oleg Artamonov wrote:
Hi
We do. On STM32L0, STM32L1, nRF52, etc.
Checking for interrupt flags is absolutely useless here - 1) WFI checks for any relevant interrupt flags, 2) interrupt still can happen between check and WFI.
--
/Sincerely yours,/
/Oleg Artamonov/
/+7 (916) 631-34-90/
/www.unwds.com/ <http://www.unwireddevices.com>
26.05.2019, 18:40, "Kees Bakker" <k...@sodaq.com>:

    Hey

    Is there anyone using cortexm_sleep for a real application? And if
    yes, would you want to share how exactly that's done?

    Let me say that I've never written a real application with RIOT, but
    I would like to. One of the important requirements is that the app
    must be in sleep (deep sleep) and only wake up to do some work.
    And another requirement is to use the watchdog.

    That said, I'm familiar with the following Arduino pseudo code.

         while (forever) {
             do stuff

             disable interrupts
             if !certain condition
                 __WFI();
             enable interrupts
         }

    That "certain condition" is mostly checking that no WDT or RTC
    interrupt
    occurred before disabling the interrupts. These interrupts are handled
    by ISR's and they set a flag. This is a fairly common thing to do,
    I think.

    I don't see (or understand) how this can be achieved with RIOT-OS and
    cortexm_sleep. It is essential to check the condition AFTER
    disabling the
    interrupts.

    --
    Kees Bakker
    _______________________________________________
    devel mailing list
    devel@riot-os.org <mailto:devel@riot-os.org>
    https://lists.riot-os.org/mailman/listinfo/devel


_______________________________________________
devel mailing list
devel@riot-os.org
https://lists.riot-os.org/mailman/listinfo/devel

_______________________________________________
devel mailing list
devel@riot-os.org
https://lists.riot-os.org/mailman/listinfo/devel

Reply via email to