File tree Expand file tree Collapse file tree 4 files changed +57
-0
lines changed Expand file tree Collapse file tree 4 files changed +57
-0
lines changed Original file line number Diff line number Diff line change
1
+ # DeepSleepLock example
2
+
3
+ Example use of the DeepSleepLock class.
4
+
Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (c) 2020 Arm Limited and affiliates.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ #include " mbed.h"
6
+
7
+ InterruptIn button (BUTTON1);
8
+ DigitalOut led (LED1);
9
+
10
+ void toggle ()
11
+ {
12
+ led = !led;
13
+ }
14
+
15
+ int main ()
16
+ {
17
+ button.rise (&toggle);
18
+ button.fall (&toggle);
19
+
20
+ // Lock deep sleep to decrease interrupt latency
21
+ // at the expense of high power consumption
22
+ DeepSleepLock lock;
23
+
24
+ while (1 ) {
25
+ // Wait and let interrupts take care of the rest
26
+ ThisThread::sleep_for (1000 );
27
+ }
28
+ }
Original file line number Diff line number Diff line change
1
+ # Sleep manager example
2
+
3
+ Example use of the sleep manager API.
4
+
Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (c) 2020 Arm Limited and affiliates.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ #include " mbed.h"
6
+
7
+
8
+ int main ()
9
+ {
10
+ // Deep sleep for 1 second
11
+ printf (" Deep sleep allowed: %i\r\n " , sleep_manager_can_deep_sleep ());
12
+ ThisThread::sleep_for (1000 );
13
+
14
+ // Lock deep sleep
15
+ printf (" Locking deep sleep\r\n " );
16
+ sleep_manager_lock_deep_sleep ();
17
+
18
+ // Sleep for 1 second
19
+ printf (" Deep sleep allowed: %i\r\n " , sleep_manager_can_deep_sleep ());
20
+ ThisThread::sleep_for (1000 );
21
+ }
You can’t perform that action at this time.
0 commit comments