commit 00047d21cef637a2ada062b3399d49b97ef6316f
parent 47789e12a5a24eae09ee5a0978e09c1a5b7cf386
Author: Matsuda Kenji <info@mtkn.jp>
Date:   Mon, 11 Aug 2025 12:53:00 +0900
add interrupt handler
Diffstat:
| M | spi/main.s | | | 35 | +++++++++++++++++++++++++++++++---- | 
1 file changed, 31 insertions(+), 4 deletions(-)
diff --git a/spi/main.s b/spi/main.s
@@ -5,6 +5,30 @@
 vectors:
 	.word 0x20040000 // initial SP
 	.word (reset+1)  // entry point
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+	.word 0xdeadbeef
+
+	.word (uart_interrupt_handler+1) // UART0_IRQ
 
 	.section .text
 reset:
@@ -94,12 +118,9 @@ wait_vco:
 	lsl r5, #8
 	mov r0, #1
 	lsl r0, #20
-	str r0, [r4, r5]
+	str r0, [r4, r5] // M0PLUS: NVIC_ISER
 
 loop:
-	bl getbyte
-	#bl putbyte
-	bl printh
 	b loop
 
 // functions
@@ -210,6 +231,12 @@ delay_loop:
 	pop {r0}
 	bx lr
 
+uart_interrupt_handler:
+	push {lr}
+	bl getbyte
+	bl putbyte
+	pop {pc}
+
 	.align 2
 literals:
 	.ltorg