[MCU] 烧进去第一部分后再烧写第二部分第一部分的程序就没了

[复制链接]
 楼主| dingy 发表于 2020-3-21 12:21 | 显示全部楼层 |阅读模式
通常在用户需要实现IAP功能时,即用户程序运行中作自身的更新操作,需要在设计固件程序时编写两个项目代码,第一个项目程序不执行正常的功能操作,而只是通过某种通信管道(如USB、USART)接收程序或数据,执行对第二部分代码的更新;第二个项目代码才是真正的功能代码。这两部分项目代码都同时烧录在User Flash中,当芯片上电后,首先是第一个项目代码开始运行,它作如下操作:
1)检查是否需要对第二部分代码进行更新
2)如果不需要更新则转到4)
3)执行更新操作
4)跳转到第二部分代码执行
第一部分代码必须通过其它手段,如JTAG或ISP烧入;第二部分代码可以使用第一部分代码IAP功能烧入,也可以和第一部分代码一道烧入,以后需要程序更新是再通过第一部分IAP代码更新。
------------------------------------------------------------------------------------------------------------------------
请问在MSP430中,通过IAR EW430怎么能将这两部分代码一块烧进去啊,他们的XCL文件都不一样,我在烧进去第一部分后,再烧写第二部分,第一部分的程序就没了。两次烧写我都已经修改了XCL文件。
bqyj 发表于 2020-3-21 12:23 | 显示全部楼层

设置好BOOT和APP的FLASH、 INTVEC、 RESET,不要有冲突
zhuhuis 发表于 2020-3-21 12:25 | 显示全部楼层
430不清楚,DSP最近已成功升级
chenho 发表于 2020-3-21 12:27 | 显示全部楼层

设置好BOOT和APP的FLASH、 INTVEC、 RESET,不要有冲突
llljh 发表于 2020-3-21 12:28 | 显示全部楼层
这个是程序的地址有冲突了的
 楼主| dingy 发表于 2020-3-21 12:30 | 显示全部楼层
自升级的话是需要bootloader做引子的
supernan 发表于 2020-3-21 12:34 | 显示全部楼层
把两个文件合并成一个,或者先烧写bootloader程序,然后通过bootloader下载app程序
houcs 发表于 2020-3-21 12:36 | 显示全部楼层
BSL吗
yinxiangh 发表于 2020-3-21 12:38 | 显示全部楼层
你怎么实现的?
morrisk 发表于 2020-3-21 12:39 | 显示全部楼层

现在有OAD升级。
kangzj 发表于 2020-3-21 12:41 | 显示全部楼层
是串口吗?
guoyt 发表于 2020-3-21 12:43 | 显示全部楼层
是哪里的程序有冲突?
yufe 发表于 2020-3-21 12:44 | 显示全部楼层
修改bootloader了吗?
wangzsa 发表于 2020-3-21 12:45 | 显示全部楼层

能够远程升级吗?
guoyt 发表于 2020-3-21 12:47 | 显示全部楼层
楼主对什么芯片升级?
gongche 发表于 2020-3-21 12:50 | 显示全部楼层
能不能提供一个远程升级的 方案呢?
hanwe 发表于 2020-3-21 12:52 | 显示全部楼层
jtag无法远程升级吧。
bqyj 发表于 2020-3-21 12:53 | 显示全部楼层

远程烧写的吗
tian111 发表于 2020-3-21 12:56 | 显示全部楼层
你的硬件电路呢?
zwll 发表于 2020-3-21 12:57 | 显示全部楼层
可能损毁了bootloader
您需要登录后才可以回帖 登录 | 注册

本版积分规则

745

主题

10920

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部