四种bootloader
bootloader最简单的作用:启动APP
1、bootloader和APP都在芯片内部的XIP(excute in place)Flash上,bootloader直接设置PC等于APP的地址,运行APP程序(这里又分为APP带中断向量表和不带中断向量表)
2、bootloader和APP都在芯片内部的XIP Flash上,bootloader的作用还是和第一种一样(启动APP),但是APP自己把自己复制到RAM(内存)上运行
3、bootloader位于芯片内部的XIP Flash上,但是当XIP Flash空间不够时,APP可能位于外接的Flash上(SPI Flash),这时由bootloader把APP复制到RAM上运行
4、bootloader和APP可能都要用到各自的中断程序,但是有的芯片不支持硬件设置中断向量表的偏移SCB->VTOR(M3为例),这时候由bootloader的中断程序判断是APP的中断还是bootloader中断,如果是APP的新的中断就需要跳转到APP的中断程序。