bootload 思想 【BAB 】

来源:互联网 发布:淘宝手表男士 编辑:程序博客网 时间:2024/05/20 13:38

bootload 是为了更新程序和下载程序使用的。为了尽量不占用太多的flash,所以在bootload里只有基本通信协议和基本驱动。

当需要更新程序时,启动bootload程序,把基本读写函数等copy到ram中,完成后在RAM中运行。在RAM中运行有一个好处:有些

器件不支持在flash中运行并擦除flash。在RAM的运行的第一步就是擦除flash的程序块(不包括bootload部分,否则以后就不能更新程序了)。

第二步就是与通过串口(SPI、无线等)上位机通信,把程序image下载到MCU当中并写到flash中,下载完成后。进行软件复位,启动程序。

 

note:假如无线更新程序的话,还可以先下载更新程序imag到MCU的RAM中并运行它。通过这个程序实现更加复杂的程序更新。就像eZ430 运动手表的

程序更新一样。

 

原创粉丝点击