WFI sleep and wake-up for GR-PEACH

Dependencies:   mbed

mbed_sleep_blinky.cpp

Committer:
pateshian
Date:
2016-11-17
Revision:
1:e508448feb1c
Parent:
0:ab9939da6645

File content as of revision 1:e508448feb1c:

#include "mbed.h"
#define IRQ4    (36)
gpio_irq_t irqHandler;
DigitalOut led1(LED1);
int gFlag = 0;
void interrupt_irq4_user (uint32_t id, gpio_irq_event event) {
    if (!gFlag){
        gFlag = 1;
    }
}
// main() runs in its own thread in the OS
// (note the calls to Thread::wait below for delays)
int main() {
    gpio_irq_init (&irqHandler, USER_BUTTON0, interrupt_irq4_user, IRQ4); 
    while (true) {
        if ( gFlag == 1 ) {
            gFlag = 0;
            led1 = led1;
            __WFI();
            led1 = !led1;
        }
        //led1 = !led1;
        //Thread::wait(500);
    }
}