MOV R0, #4 MOV R1, __return_address() TST R0, R1 BEQ _MSP MRS R0, PSP B _checkFaultInstruction _MSP: MRS R0, MSP _checkFaultInstruction: LDR R1, [R0,#24] LDRH R2, [R1] MOV R3, 0xBEAB CMP R2, R3 BNE HardFault_HandlerC ADDS R1, #2 STR R1, [R0,#24] BX __return_address() |