建设执业注册中心网站,伊犁州新源县地图高清版,推荐网站建设的电销该怎么打,中国设计在线网BootLoader的定义#xff1a; CPU进入APP之前运行的一小段程序代码就叫做BootLoader。它是由程序员编写的#xff0c;作用是更新应用程序。这也就说明了只有BootLoader的单片机才可以升级。有的产品有升级的需要就需要BootLoader了。
单片机的启动过程可以这么叙述#xff…BootLoader的定义 CPU进入APP之前运行的一小段程序代码就叫做BootLoader。它是由程序员编写的作用是更新应用程序。这也就说明了只有BootLoader的单片机才可以升级。有的产品有升级的需要就需要BootLoader了。
单片机的启动过程可以这么叙述start→stack→data→Vactor→main
单片机一上电PC指针指向0x00000000地址所在的一块内存加载一个需要跳转的地址这个地址可以是应用程序的地址也可以是BootLoader的地址是哪个地址根据开发阶段的不同有所不同。
一般来说一个完整的操作流程是从初始地址开始跳转到boot里去检测需不需要升级需要的话就会停在boot里不需要的话就跳转到应用程序里。
看一下下图右边两个hex文件分别是烧录到左图中的两个区域的也就是单片机里实际工程项目中这两个hex文件是在一起的这里为了区分划分成了两个hex文件。
说明一下应用程序的首地址是这个应用程序的一个启动函数启动函数是一个工程启动文件相信学32单片机的时候都接触过有一个叫做启动文件的东西有堆栈的建立静态数据的存储向量表的建立这些基础工作做完才会跳转到这个main函数执行的才是用户自己的代码。 补充如果需要升级的话上面说到会停在boot里然后根据诊断仪的引导完成app黄色区域的擦除和写入当app程序下载完成后软件自动复位此时程序就更新完成了不再有升级需求boot就会直接跳转到应用程序。