ss
Dependencies: mbed-stm32l0/l1-src
Fork of Nucleo_sleep by
Diff: main.cpp
- Revision:
- 1:58b6efe82b46
- Parent:
- 0:69ffa4abe5b6
- Child:
- 2:09cd5f5c566f
--- a/main.cpp Fri Feb 21 10:27:35 2014 +0000 +++ b/main.cpp Wed Jan 27 14:50:17 2016 +0000 @@ -1,34 +1,47 @@ #include "mbed.h" - + InterruptIn event(USER_BUTTON); DigitalOut myled(LED1); - +Serial pc(SERIAL_TX, SERIAL_RX); + int go_to_sleep = 0; - + void pressed() { - printf("Button pressed\n"); - go_to_sleep = !go_to_sleep; + pc.printf("Button pressed\n"); + go_to_sleep = go_to_sleep + 1; + if (go_to_sleep > 3) go_to_sleep = 0; + } - + int main() { int i = 0; - + + pc.printf("\nPress Button to enter/exit sleep & deepsleep\n"); + event.fall(&pressed); - + while (1) { - if (go_to_sleep) { - myled = 1; - printf("%d: Entering sleep (press user button to resume)\n", i); - sleep(); - //deepsleep(); - //wait(0.1); - } else { - printf("%d: Running\n", i); + + if ((go_to_sleep == 0) || (go_to_sleep == 2)) { + pc.printf("%d: Running\n", i); myled = !myled; wait(1.0); } + + if (go_to_sleep == 1) { + myled = 0; + pc.printf("%d: Entering sleep (press user button to resume)\n", i); + sleep(); + } + + if (go_to_sleep == 3) { + myled = 0; + pc.printf("%d: Entering deepsleep (press user button to resume)\n", i); + deepsleep(); + } + i++; } }