Bootloader开发01

  • Post author:
  • Post category:其他


来喽,又开始记录了。

这个周三,接到领导通知,要在我们的MCU里面加入bootloader程序。说干就干,目前手头的工作进度,简单的收了个尾,就着手开始查芯片手册,找bootloader资料。

今天周五,就把这两天找到的总结了一下:

1:bootloader流程:

1.1:MCU的flash memory里面可能有一个固定的地方,存放这一个标记位,决定着MCU重启后,到底指针指向正常的application的首地址,还是bootloader的首地址;

1.2:如果这个标记位是指向bootloader的首地址,那么就需要接收外界输入的MCU固件信息,并且将这些信息写入application所在的位置,当然写入之前需要先擦除这些flash memory;

1.3:写入完毕,MCU程序指针跳到application的首地址,开始指向application的程序,完成;

2:针对上面的流程,需要有两点支持:

2.1:协议的支持:

想要mcu知道,mcu接收到的信息,代表的新的固件信息或者代表设置了1.1里面所说的标记位,这些都需要特定的协议来具体规定;

2.2:就是1.2里面说的MCU固件信息,需要将hex转化成其他形式的数据吗?

2.3:上位机:

开始触发bootloader流程,发送mcu新的固件,都需要上位机对mcu发出指令;

2.4:MCU的datasheet

存放标记位的信息放在哪个地址里?哪些地址存application固件?哪些地址存bootloader固件?

2.5:烧录

如何烧录bootloader程序?如何烧录application程序?

好了,这就是目前看下来的收获和疑问,简单记录一下,明确一下目标,继续查资料。。。



版权声明:本文为ab007007原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。