aboutsummaryrefslogtreecommitdiffstats
path: root/src/main.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.zig')
-rw-r--r--src/main.zig9
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");
+ }
}
}