阅读背景:

STM32在线升级原理,和应用程序不正常运行

来源:互联网 

为方便产品出厂后,用户可以通过外设接口如USB,USART对设备进行升级,通常会有一段引导代码,在开机的时候从Boot启动,启动通过与上位机通信是否需要升级,如果没有升级就直接跳转到APP空间,及一个超循环体中(无操作系),boot程序一般放在flash开始出0x08000000处,用户可以在此处放入boot代码,处理上位机发送过来代码段数据,通过操作flash将我们的APP放到指定偏移地址,烧写完毕后,可以自动跳转到对应的地址开始执行应用程序APP;应用程序如果通过在线烧写st-link烧写,需要将keil编译选项中的rom地址改为0x08002000,0x2000就是APP存放代码的偏移地址,并且还需要再代码中将我们的中断向量偏移到0x2000处;为方便产品出厂后,用户可以通过外设接口如USB,USART对设备进行升级,通常会有一段引导代码




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: