STM32 BootLoader学习(1)串口IAP

    科技2022-07-11  88

    1.学习了解下STM32的BootLoader,首先研究下基于串口的IAP(In Application Programming)应用编程.目的是,在以后可以方便的通过预留的通信接口(此处是串口)对产品中的固件进行更新升级,俗称的APP.在此整文程序由Bootloader App构成,同时实现Bootloader App.

    2.Bootloader的基本功能.

    1)检查是否需要对第二部分代码进行更新 2)如果不需要更新则转到 4) 3)执行更新操作 4)跳转到第二部分代码执行

    3.正常的STM32 运行流程图.正常的时候运行起始地址是0x08000000,STM32 在复位后,先从 0X08000004 地址取出复位中断向量的地址,并跳转到复位中断服务程序,如图标号①所示;在复位中断服务程序执行完之后,会跳转到我们的main 函数,如图标号②所示;而我们的 main 函数一般都是一个死循环,在 main 函数执行过程中,如果收到中断请求(发生重中断),此时 STM32 强制将 PC 指针指回中断向量表处,如图标号③所示;然后,根据中断源进入相应的中断服务程序,如图标号④所示;在执行完中断服务程序以后,程序再次返回 main 函数执行,如图标号⑤所示。

    Processed: 0.019, SQL: 8