exercises: add Exercise 08 SystemStartup scaffold with early SPI deselect and SD/OLED startup orchestration
This commit is contained in:
parent
2aec641fc2
commit
322a77bfe4
9 changed files with 720 additions and 0 deletions
43
exercises/08_SystemStartup/README.md
Normal file
43
exercises/08_SystemStartup/README.md
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
## Exercise 08: SystemStartup Package Scaffold
|
||||
|
||||
This exercise starts a reusable `SystemStartup` package that is intended to be shared by future exercises and field firmware.
|
||||
|
||||
Current package responsibilities:
|
||||
|
||||
1. Initialize OLED and show boot/status messages.
|
||||
2. Initialize SD startup watcher.
|
||||
3. Keep SD monitoring active in `loop()` with a single call.
|
||||
|
||||
Current integration pattern:
|
||||
|
||||
```cpp
|
||||
#include "SystemStartup.h"
|
||||
|
||||
static SystemStartup g_systemStartup(Serial);
|
||||
|
||||
void setup() {
|
||||
Serial.begin(115200);
|
||||
g_systemStartup.begin();
|
||||
}
|
||||
|
||||
void loop() {
|
||||
g_systemStartup.update();
|
||||
delay(10);
|
||||
}
|
||||
```
|
||||
|
||||
This is the foundation for adding more startup subsystems (RTC sync/check, etc.) behind the same `begin()/update()` API.
|
||||
|
||||
## Build
|
||||
|
||||
```bash
|
||||
source /home/jlpoole/rnsenv/bin/activate
|
||||
pio run -e node_a
|
||||
```
|
||||
|
||||
## Upload
|
||||
|
||||
```bash
|
||||
source /home/jlpoole/rnsenv/bin/activate
|
||||
pio run -e node_a -t upload --upload-port /dev/ttyACM0
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue