avr-task-scheduler

AVR mcu bare metal task scheduler
Index Commits Files Refs README LICENSE
commit 7aa4c486b9bf8daa88969e34c6911080b043d538
parent 11c092f9280a090b2a993c2d4bbd8125757470fa
Author: Martin Kloeckner <mjkloeckner@gmail.com>
Date:   Sun, 28 Sep 2025 13:10:12 -0300

`setup` -> `io_setup`: remove non io initializations

Diffstat:
Msrc/main.c | 24+++++-------------------
1 file changed, 5 insertions(+), 19 deletions(-)
diff --git a/src/main.c b/src/main.c
@@ -24,35 +24,21 @@ void read_button(void) {
     }
 }
 
-/*
-typedef enum {
-    TOGGLE_LED_1 = 0,
-    TOGGLE_LED_2,
-    READ_BUTTON,
-    TASKS_COUNT
-} task_id_e;
-*/
-
 task_t tasks[] = {
     { toggle_led_1, 1000 },
     { toggle_led_2, 500 },
     { read_button,  0 }
 };
 
-const uint8_t tasks_count = sizeof(tasks)/sizeof(tasks[0]);
-
-void setup(void) {
-    DDRD = (DDRD | (1<<LED_1_PIN) | (1<<LED_2_PIN) | (1<<LED_3_PIN))
-            & ~(1<<BTN_PIN);
-
+void io_setup(void) {
+    DDRD = (DDRD | (1<<LED_1_PIN) | (1<<LED_2_PIN) | (1<<LED_3_PIN)) & ~(1<<BTN_PIN);
     PORTD |= (1<<BTN_PIN);
-
-    millis_init();
-    scheduler_init(tasks, tasks_count);
 }
 
 int main(void) {
-    setup();
+    io_setup();
+    millis_init();
+    scheduler_init(tasks, sizeof(tasks)/sizeof(tasks[0]));
 
     while(1) {
         scheduler_update(millis());