车载产品Bootloader功能的应用与实现

应用

       Bootloader,即在线程序烧写。很多汽车电子产品,都需要具备在线固件更新功能。这主要是因为产品在装车后,往往不方便单独拆卸,如果要对其进行软件更新,就只能通过通用外部接口ODBII上的CAN线来进行烧写升级。

 

基本原理

       要实现在线程序烧写,那么就需要把单片机的存储空间分成两个部分,分别用来存放自举程序和应用程序。

车载产品Bootloader功能的应用与实现_第1张图片

 

 

 

       自举程序,我们一般称为boot程序,它主要有两个功能:用于引导应用程序执行;实现应用程序的更新刷写。应用程序,我们一般称为app程序,也就是我们不带boot功能的源程序。这有点像我们的PC,PC开机并不是直接进windows操作系统,而是先进bios主板引导程序。这里的boot就相当于PC的bios,app就相当于windows,实际上是一个道理。

       

地址分配

        由于在一个单片机内同时存在两个独立的程序,boot和app。这两个程序独立运行,但有一定先后顺序。单片机上电之初,应该默认执行boot程序,因此boot程序一般分配在flash的起始位置。将app整个程序放在boot程序之后,boo

你可能感兴趣的:(车载产品Bootloader功能的应用与实现)