blob: 7c0ab8003f949ac5ed7cf46160be13e8bbd9de54 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include <stdlib.h>
#define SHUTDOWN_THRESHOLD 2048
/**
* Contains the system idle loop. Checks for button presses, handles
* standby/resume, reads data from the Modem and updates the Display.
*/
class System {
private:
uint16_t want_shutdown;
void shutdown(void);
public:
System() { want_shutdown = 0; };
/**
* Initial MCU setup. Turns off unused peripherals to save power
* and configures the button pins. Also configures all other pins
* and peripherals using the enable function of their respective
* classes. Turns on interrupts once that's done.
*/
void initialize(void);
/**
* System idle loop. Checks for button presses, handles
* standby/resume, reads data from the Modem and updates the Display.
*
* It is recommended to run this function before going back to sleep
* whenever the system is woken up by an interrupt.
*/
void loop(void);
};
extern System rocket;
|