TI中文支持网
TI专业的中文技术问题搜集分享网站

28377D在线升级问题

本人最近在做一个关于28377D的SCI在线升级功能。由于条件受限,没办法把GPIO72和GPIO84引脚引出来做控制,因而不使用芯片自带的BOOT功能。具体实验方法是:

1. DSP使用FAPI的函数,擦除FLASH上的数据;

2. 上位机通过串口把HEX的程序数据传输给DSP,DSP使用FAPI函数把所有的数据都烧录到对应的flash区块中;

3. DEBUG下点击CCS上的复位功能,复位芯片;

4. 单步运行,发现程序跑飞了;

排查过程:

1. 使用Memory->Save Memory,分别存储了使用在线升级和使用烧录器这两种方法下载程序到flash对应的memory数据;

2. 使用beyondcompare软件比对2份memory数据,发现2份数据一致,说明在线升级的数据与使用烧录器烧录的数据和地址都是一致的;

如果2种方法烧录的数据一致,那为什么使用FAPI烧录程序后会导致程序跑飞呢,是不是还需要烧录别的东西呢?请有相关经验的大佬指教一下,谢谢!

Green Deng:

这个。。。你这种FlashAPI+SCI Boot的升级方法说实话还真没见到过,虽然没觉得有什么问题,但总感觉有点奇怪。
程序能单步运行的话,你的程序具体是执行到哪一句代码的时候发生跑飞的?
另外,F28377D芯片有一个将boot引脚替换为其他引脚的方法不知道你是否需要了解一下?不过这个方法是要写入芯片OTP的,也就是说一次写入之后就无法擦除,以后这块芯片都必须使用这两个引脚作为boot引脚了。

赞(0)
未经允许不得转载:TI中文支持网 » 28377D在线升级问题
分享到: 更多 (0)