IAP在线升级

1.先介绍一下我的IAP升级方式

  • 芯片资源
    内核:contex-M3
    内存:128kb
    flash:512kb
  • 大致流程
    ----准备一张sd卡,带有程序所运行的必要资源,包括图片、字体、代码。
    ----插入sd卡,接通电源,运行UserApp程序,将SD卡的资源拷贝到SPI_flash中。(FatFs文件系统)
    ----若检测到特定的升级信号,跳入到BOOT程序中,将SPI_flash的程序拷贝到MCU_flash中。(FatFs文件系统)
    ----拷贝完成,再自动跳转到User_App,升级完毕。

2.遇到的BUG

  • BUG1:从APP跳入Bootloader时,发生死机。
  • BUG2:移植文件系统到Bootloader程序,导致程序过大,接近200Kb,然而我的APP大小达到350Kb。总大小超过512Kb。

3.代码分析

posted @ 2023-09-20 16:42  Charles_hui  阅读(159)  评论(0)    收藏  举报