aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/kern/main.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/kern/main.c b/src/kern/main.c
index 4acdedb..9d93247 100644
--- a/src/kern/main.c
+++ b/src/kern/main.c
@@ -8,6 +8,7 @@
#include "arch/stm32l4xxx/peripherals/system.h"
#include "drv/ws2812B/ws2812b.h"
#include "kern/delay.h"
+#include "kern/systick/systick_manager.h"
#include "kern/dma/dma_manager.h"
#include "kern/gpio/gpio_manager.h"
#include "kern/gpio/sysled.h"
@@ -87,7 +88,7 @@ extern uint8_t sintable[256];
static uint32_t time;
-void on_systick()
+static void on_systick(void* nil)
{
// klogf("Systick.\n");
++time;
@@ -177,7 +178,8 @@ int main()
klogf("sintable[5]: %d\n", sintable[5]);
klogf("Flashed with OpenOCD!\n");
- SCB.strv_r = 1000;
+ systick_add_callback(on_systick, NULL);
+ enable_systick(1000);
/* Enable interrupts. */
regset(SCB.stcs_r, scb_tickint, 1);
@@ -217,7 +219,8 @@ int main()
for (i = 0; i < SIZE; ++i) {
red = byte_sin((i * 4 * 2 + time / 1000) & 0xff) / 2;
green = byte_sin((i * 4 * 3 + time / 1000) & 0xff) / 2;
- blue = amp(byte_sin((i * 2 * 3 + time / 1000) & 0xff)) / 2;
+ blue = 0;
+ // blue = amp(byte_sin((i * 2 * 3 + time / 1000) & 0xff)) / 2;
// uint8_t red = byte_sin((i * 8 + 64 + time / 100) & 0xff);
// uint8_t green = byte_sin((i * 8 + 0 + time / 100) & 0xff);