本帖最后由 hzocce 于 2018-4-9 11:43 编辑
按我的理解,做单片机的Bootloader应该分为2部分。
1.是Bootloader引导部分,单独一个工程,单独一个HEX文件,也就是在此部分中,做一步步的程序CODE搬运工作,讲CODE往单片机的FLASH中写入,擦出,写入,直到写完为止,然后调到正常的程序启动。
2.另外就是用户正常的程序部分,也是单独一个工程,单独一个HEX文件。
此文件,Uart,CAN,USB或者其他的通讯中断中,有一个判断,接到某一条命令,就将程序跳转到bootloader区;
这样的理解应该是对么?
----------------------------------------------------------------------------------------------------------
可是问题来了:
1. 分2次下载HEX文件?
2. 2个HEX的起止地址是不同的,可是如何分开这个地址呢?
3. 是在编译之前在KEIL 的魔法棒"option for target"里面设置好么?
4. 还是是下载的时候在"option for target"中的设置?
5. 里面有一个BL51 Locate,还有一个BL51 Misc, 在哪里设置?
6. 是不是下载2个HEX文件,都是重复上次的地址设置动作?
7. 后面在更新用户程序的时候,是不是直接在Uart,CAN, USB工具中,直接点击发送HEX文件就可以么?
以上困惑,麻烦各位热心肠坛友指点指点,谢谢~~~~~~
|