diff options
Diffstat (limited to 'src/main.zig')
-rw-r--r-- | src/main.zig | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/main.zig b/src/main.zig index 8857583..deac169 100644 --- a/src/main.zig +++ b/src/main.zig @@ -1,6 +1,7 @@ const cpu = @import("cpu.zig"); const gpio = @import("gpio.zig"); const interrupt = @import("interrupt.zig"); +const timer = @import("timer.zig"); const rcc: *[39]u32 = @ptrFromInt(0x40021000); const gpioa = gpio.gpioa; @@ -10,6 +11,7 @@ export fn _start() callconv(.C) noreturn { cpu.interrupt_disable(); interrupt.initialize(); interrupt.register(.SVCall, svcall); + timer.initialize(1000); cpu.interrupt_enable(); rcc[19] |= 5; // gpio a and c @@ -17,7 +19,12 @@ export fn _start() callconv(.C) noreturn { gpioc.set_mode(13, .input); while (true) { - asm volatile("svc 0"); + //asm volatile("svc 0"); + gpioa.toggle(5); + const next = timer.ticks() + 1000; + while (timer.ticks() < next) { + asm volatile("nop"); + } } } |