ss

Dependencies:   mbed-stm32l0/l1-src

Fork of Nucleo_sleep by ST

Committer:
lzbpli
Date:
Thu Sep 08 03:50:11 2016 +0000
Revision:
2:09cd5f5c566f
Parent:
1:58b6efe82b46
test;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bcostm 0:69ffa4abe5b6 1 #include "mbed.h"
bcostm 1:58b6efe82b46 2
lzbpli 2:09cd5f5c566f 3 InterruptIn event(PC_13);
lzbpli 2:09cd5f5c566f 4 DigitalOut myled(PB_3);
lzbpli 2:09cd5f5c566f 5 Serial pc(PB_6, PB_7);
lzbpli 2:09cd5f5c566f 6 DigitalOut VccEnable(PB_5);
bcostm 0:69ffa4abe5b6 7 int go_to_sleep = 0;
bcostm 1:58b6efe82b46 8
bcostm 0:69ffa4abe5b6 9 void pressed()
bcostm 0:69ffa4abe5b6 10 {
bcostm 1:58b6efe82b46 11 pc.printf("Button pressed\n");
bcostm 1:58b6efe82b46 12 go_to_sleep = go_to_sleep + 1;
bcostm 1:58b6efe82b46 13 if (go_to_sleep > 3) go_to_sleep = 0;
bcostm 1:58b6efe82b46 14
bcostm 0:69ffa4abe5b6 15 }
bcostm 1:58b6efe82b46 16
bcostm 0:69ffa4abe5b6 17 int main()
bcostm 0:69ffa4abe5b6 18 {
bcostm 0:69ffa4abe5b6 19 int i = 0;
lzbpli 2:09cd5f5c566f 20 VccEnable = 0; //功能电源开关,0:on,1:off
bcostm 1:58b6efe82b46 21 pc.printf("\nPress Button to enter/exit sleep & deepsleep\n");
lzbpli 2:09cd5f5c566f 22 // VccEnable = 0;
bcostm 1:58b6efe82b46 23
bcostm 0:69ffa4abe5b6 24 event.fall(&pressed);
bcostm 1:58b6efe82b46 25
bcostm 0:69ffa4abe5b6 26 while (1) {
bcostm 1:58b6efe82b46 27
bcostm 1:58b6efe82b46 28 if ((go_to_sleep == 0) || (go_to_sleep == 2)) {
bcostm 1:58b6efe82b46 29 pc.printf("%d: Running\n", i);
bcostm 0:69ffa4abe5b6 30 myled = !myled;
bcostm 0:69ffa4abe5b6 31 wait(1.0);
bcostm 0:69ffa4abe5b6 32 }
bcostm 1:58b6efe82b46 33
bcostm 1:58b6efe82b46 34 if (go_to_sleep == 1) {
bcostm 1:58b6efe82b46 35 myled = 0;
bcostm 1:58b6efe82b46 36 pc.printf("%d: Entering sleep (press user button to resume)\n", i);
bcostm 1:58b6efe82b46 37 sleep();
bcostm 1:58b6efe82b46 38 }
bcostm 1:58b6efe82b46 39
lzbpli 2:09cd5f5c566f 40 if (go_to_sleep == 2) {
bcostm 1:58b6efe82b46 41 myled = 0;
bcostm 1:58b6efe82b46 42 pc.printf("%d: Entering deepsleep (press user button to resume)\n", i);
bcostm 1:58b6efe82b46 43 deepsleep();
bcostm 1:58b6efe82b46 44 }
bcostm 1:58b6efe82b46 45
bcostm 0:69ffa4abe5b6 46 i++;
bcostm 0:69ffa4abe5b6 47 }
bcostm 0:69ffa4abe5b6 48 }