1、修改链接文件(GNU:.LD,ARMCC:.sct)
将 中断向量表、中断服务函数 的 加载区 设置为ROM,运行区 设置为RAM。由 crt 在 main 函数 执行之前 将这些 section 从 ROM 加载到 RAM 中。
不同编译器,写法不同
2、修改中断向量表
修改 中断向量表 的 起始地址,或者说 修改 中断向量表 偏移量。不同芯片,寄存器操作可能不同。
提示:Bootloader需要在真正操作Flash之前,将Flash驱动搬到RAM中运行。因为要进行擦、写Flash,所以程序不能运行在Flash中。