❤🧡💛2023重新理解记录
BOOT+APP=Flash,boot是通信使用,APP是功能代码,平时烧录的文件.hex时boot与app的结合体,一般刷boot要用专门的工具,boot的区域一般是固定的(也有说是出厂固化的),但是app代码区域是可以手动调整的,下载.hex文件就是下载更新了app文件
因为FLASH是放代码的,这个FLASH是单片机芯片内部的FLASH(不是外加的FLASH存储芯片),可以理解为,向量是地址,程序是函数,main函数的中断请求首先找到向量,再跳到中断函数,再跳回来main函数
上面函数与下面函数的区别可以理解为,上面是原有的程序,下面是通过IAP更新覆盖的程序,是新的程序(因为一个程序不允许两个main函数同时存在!,学过C语言也都知道这点),理论上可以有很多APP程序,都可以通过IAP覆盖原有的main程序实现升级或者更新!为什么要这样做呢?