-
-
Save shima-529/52738f4ca594e3a46d13419d0f957220 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stddef.h> | |
extern int _estack; | |
void __libc_init_array(void); | |
extern int _sdata, _edata, _sidata; | |
extern int _sbss, _ebss; | |
int main(void); | |
void Reset_Handler(void) { | |
// Clear .bss section | |
int *p = &_sbss; | |
while( p != &_ebss ) { | |
*p = 0; | |
p++; | |
} | |
// Copy .data section | |
const int *src = &_sidata; | |
int *dest = &_sdata; | |
while( dest != &_edata ) { | |
*dest = *src; | |
src++; | |
dest++; | |
} | |
__libc_init_array(); | |
main(); | |
while(1); | |
} | |
__attribute__((weak)) | |
void NMI_Handler(void) { | |
while(1) { | |
} | |
} | |
__attribute__((weak)) | |
void HardFault_Handler(void) { | |
while(1){} | |
} | |
__attribute__((weak)) | |
void SVC_Handler(void) {} | |
__attribute__((weak)) | |
void PendSV_Handler(void) {} | |
__attribute__((weak)) | |
void SysTick_Handler(void) {} | |
__attribute__((weak)) | |
void Handler0(void) {} | |
__attribute__((weak)) | |
void Handler1(void) {} | |
__attribute__((weak)) | |
void Handler2(void) {} | |
__attribute__((weak)) | |
void Handler3(void) {} | |
__attribute__((weak)) | |
void Handler4(void) {} | |
__attribute__((weak)) | |
void Handler5(void) {} | |
__attribute__((weak)) | |
void Handler6(void) {} | |
__attribute__((weak)) | |
void Handler7(void) {} | |
__attribute__((weak)) | |
void Handler8(void) {} | |
__attribute__((weak)) | |
void Handler9(void) {} | |
__attribute__((weak)) | |
void Handler10(void) {} | |
__attribute__((weak)) | |
void Handler11(void) {} | |
__attribute__((weak)) | |
void Handler12(void) {} | |
__attribute__((weak)) | |
void Handler13(void) {} | |
__attribute__((weak)) | |
void Handler14(void) {} | |
__attribute__((weak)) | |
void Handler15(void) {} | |
__attribute__((weak)) | |
void Handler16(void) {} | |
__attribute__((weak)) | |
void Handler17(void) {} | |
__attribute__((weak)) | |
void Handler18(void) {} | |
__attribute__((weak)) | |
void Handler19(void) {} | |
__attribute__((weak)) | |
void Handler20(void) {} | |
__attribute__((weak)) | |
void Handler21(void) {} | |
__attribute__((weak)) | |
void Handler22(void) {} | |
__attribute__((weak)) | |
void Handler23(void) {} | |
__attribute__((weak)) | |
void Handler24(void) {} | |
__attribute__((weak)) | |
void Handler25(void) {} | |
__attribute__((weak)) | |
void Handler26(void) {} | |
__attribute__((weak)) | |
void Handler27(void) {} | |
__attribute__((weak)) | |
void Handler28(void) {} | |
__attribute__((weak)) | |
void Handler29(void) {} | |
__attribute__((weak)) | |
void Handler30(void) {} | |
__attribute__((weak)) | |
void Handler31(void) {} | |
__attribute__((section(".isr_vector"))) | |
void (*isr_vector[])(void) = { | |
(void *)&_estack, | |
Reset_Handler, | |
NMI_Handler, | |
HardFault_Handler, | |
NULL, | |
NULL, | |
NULL, | |
NULL, | |
NULL, | |
NULL, | |
NULL, | |
SVC_Handler, | |
NULL, | |
NULL, | |
PendSV_Handler, | |
SysTick_Handler, | |
Handler0, | |
Handler1, | |
Handler2, | |
Handler3, | |
Handler4, | |
Handler5, | |
Handler6, | |
Handler7, | |
Handler8, | |
Handler9, | |
Handler10, | |
Handler11, | |
Handler12, | |
Handler13, | |
Handler14, | |
Handler15, | |
Handler16, | |
Handler17, | |
Handler18, | |
Handler19, | |
Handler20, | |
Handler21, | |
Handler22, | |
Handler23, | |
Handler24, | |
Handler25, | |
Handler26, | |
Handler27, | |
Handler28, | |
Handler29, | |
Handler30, | |
Handler31, | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment