diff options
author | Josh Rahm <joshuarahm@gmail.com> | 2024-12-04 00:47:54 -0700 |
---|---|---|
committer | Josh Rahm <joshuarahm@gmail.com> | 2024-12-04 00:47:54 -0700 |
commit | 03b84b89f6361df556749a4c73679a6cbcedd28a (patch) | |
tree | ee5a6569feddc3bc32ab0bdb485affb56d7fafbe /src/systick.c | |
parent | d6d04862de9126d0930ae1f4b95ff6077c6eda63 (diff) | |
download | ch573-03b84b89f6361df556749a4c73679a6cbcedd28a.tar.gz ch573-03b84b89f6361df556749a4c73679a6cbcedd28a.tar.bz2 ch573-03b84b89f6361df556749a4c73679a6cbcedd28a.zip |
Implemented listener system for systick.
Diffstat (limited to 'src/systick.c')
-rw-r--r-- | src/systick.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/systick.c b/src/systick.c index 506f6df..3cd7bfa 100644 --- a/src/systick.c +++ b/src/systick.c @@ -28,7 +28,14 @@ int systick_interrupt() return SYSTICK_I.counter_interrupt_flag.get(SYSTICK); } +extern systick_cb_t SYSTICK_LISTENERS_START; +extern systick_cb_t SYSTICK_LISTENERS_END; IRQ(systick) { + systick_cb_t* cur = &SYSTICK_LISTENERS_START; + while (cur != &SYSTICK_LISTENERS_END) { + (*cur)(); + ++cur; + } SYSTICK_I.counter_interrupt_flag.set(SYSTICK, 0); } |