编程语言
首页 > 编程语言> > 单片机GD32F3X0 STM32的中断总开关汇编代码

单片机GD32F3X0 STM32的中断总开关汇编代码

作者:互联网

 

__asm void disableAllInt(void)
{
    CPSID I
    BX    LR      
}

__asm void enableAllInt(void)
{
    CPSIE I
    BX    LR
}

 

__asm void MSR_MSP(uint32_t addr)
{
    MSR MSP, r0             //set Main Stack value
    BX r14
}


void iap_boot_loader(unsigned int addr)
{
    if(((*(volatile uint32_t *)addr) & 0x2ff00000) == 0x20000000)
    {
        disableINT();
        disableAllInt();
        jump2app = (iapfun)*(volatile uint32_t *)(addr + 4);
        MSR_MSP(*(volatile uint32_t *)addr);
        jump2app();
    }
}

 

 

 

在别人代码中看到,觉得需要记录一下。

 

标签:__,总开关,addr,void,GD32F3X0,MSR,MSP,STM32,uint32
来源: https://www.cnblogs.com/hexia7935/p/16098907.html