近期看到一篇关于bootloader的博文,亲手也尝试了一下,这里做下笔记,方便日后查看,根据项目修改可以加个DTU,用服务器远程升级一下程序。
一、工程配置
使用的是stm32f103vet6芯片,512的ROM,64kRAM,外部flash用的是8M芯片W25Q64,分成三部分,每部分1Mb,第一块(0x000000-0x100000)存放升级应用程序,第二块(0x100000-0x200000)存放备份程序(即当前应用程序),第三块用来存放标志位(新旧程序校验码、旧程序备份标志、新程序更新