File tree Expand file tree Collapse file tree 1 file changed +14
-1
lines changed Expand file tree Collapse file tree 1 file changed +14
-1
lines changed Original file line number Diff line number Diff line change 1
1
#include " Arduino.h"
2
2
#include " usb/USB.h"
3
3
4
+ #define APPLICATION_VECTOR_TABLE_ADDRESS_RAM 0x20007F00
5
+
4
6
void startAgt ();
5
7
6
8
void _init () {
7
9
R_BSP_PinAccessEnable ();
8
10
}
9
11
10
- static uint32_t vectors[BSP_CORTEX_VECTOR_TABLE_ENTRIES+BSP_ICU_VECTOR_MAX_ENTRIES] __attribute__((aligned ( 0x1000U ))) ;
12
+ volatile uint32_t *irq_vector_table ;
11
13
12
14
void startAgt (void );
13
15
@@ -18,6 +20,17 @@ extern const fsp_vector_t g_vector_table[];
18
20
void arduino_main (void )
19
21
{
20
22
__disable_irq ();
23
+ irq_vector_table = (volatile uint32_t *)APPLICATION_VECTOR_TABLE_ADDRESS_RAM;
24
+ int _i;
25
+ for (_i=0 ; _i<BSP_CORTEX_VECTOR_TABLE_ENTRIES; _i++) {
26
+ *(irq_vector_table + _i) = (uint32_t )__VECTOR_TABLE[_i];
27
+ }
28
+ for (_i=0 ; _i<BSP_ICU_VECTOR_MAX_ENTRIES; _i++) {
29
+ *(irq_vector_table + _i +BSP_CORTEX_VECTOR_TABLE_ENTRIES) = (uint32_t )g_vector_table[_i];
30
+ }
31
+
32
+ SCB->VTOR = (uint32_t )irq_vector_table;
33
+
21
34
__DSB ();
22
35
__enable_irq ();
23
36
You can’t perform that action at this time.
0 commit comments