Java教程

单片机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();
    }
}

 

 

 

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

 

这篇关于单片机GD32F3X0 STM32的中断总开关汇编代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!