bootload 思想 【BAB 】

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

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

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

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

 

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

程序更新一样。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值