原文地址::http://www.openedv.com/posts/list/0/55803.htm;jsessionid=BF32A849CB8EF733FEEC85010EBCE48C
void WFI_SET(void)
{
__ASM volatile("wfi");
}
//关闭所有中断
void INTX_DISABLE(void)
{
__ASM volatile("cpsid i");
}
//开启所有中断
void INTX_ENABLE(void)
{
__ASM volatile("cpsie i");
}
//设置栈顶地址
//addr:栈顶地址
__asm void MSR_MSP(u32 addr)
{
MSR MSP, r0 //set Main Stack value
BX r14
}
//=========================================修改如下就可以了==============================================
03 | __asm void WFI_SET( void ) |
08 | __asm void INTX_DISABLE( void ) |
13 | __asm void INTX_ENABLE( void ) |
19 | __asm void MSR_MSP(u32 addr) |