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

关于在应用程序中直接跳转到SCI_BOOT的问题(TMS320F28035)

我在一个帖子中看到有关于BOOTLOAD方式的描述,
http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/t/22790.aspx?pi239031348=2 
提到如下事项:

我认为有三种方式:

1. 配置GPIO口,设置引导模式

芯片的ROM中有自带的引导程序,如果要进入那个引导程序,就需要配置对应的GPIO口,见TMS320x2803x Piccolo Boot ROM reference guide文档说明。

同时需要上位机通过CAN硬件将对应格式的数据发送给到C2000.

2. 在应用程序中跳转到ROM中的CAN引导入口

参考例程C:\ti\controlSUITE\device_support\f2803x\v130\DSP2803x_examples_ccsv5\f2803x_flash_kernel

这种情况是可以用在在线升级中。

3. 自己写引导程序,包括flash API操作

这种也用于在线升级中,跟2有点类似,只不过你可以自己定义数据格式,通过CAN接受上位机的数据,然后擦除flash,烧写接收到的数据包。

Eric

我在应用程序中,想用你的第二种方式来实现在线刷新应用程序。

Uint32 (*SCI_Boot_ptr)(void) = (Uint32 (*)(void))0x3ff7dd;
Uint32 entryAddr;

。。。应用程序代码。

DINT;
    DisableDog();

  entryAddr = (*SCI_Boot_ptr)(); 

即在某种条件下(目前是通信给一特定数据),让程序直接跳转到 SCI_BOOT的起始地址 0x3ff7dd。

思路基本是如上。。

目前遇到的问题是,我在程序跳转到0x3ff7dd之后(此时应用程序已经飞掉了)用C2PROG软件烧写HEX文件,出现如下提示

*** PLEASE RESET TARGET IN SCI BOOT-LOADER MODE ***
Connecting with target (autobaud)…  OK.
Bootloading…  OK.
Please wait…
Connecting with target…  failed (no response)!

在这一步完成不了。。。所以要完成不了,自己想要的简易BOOTLOADER

我的目标板是TMS320F28035  我用C2PROT 在上电直接进SCI_BOOT 没问题(上电把GPIO34拉底)

按道理,我目前程序能接受前面的一些指令,后面的进行不下去,很奇怪,所以发出来,看看有没有同行一起再研究这个。。。。

大家可以一起讨论,我同时也发了一封邮件给ERIC,希望能得到一些指导。。。大家可以互相学习下。

Seven Han:

您好,

不知您使用的哪个版本的C2PROG,论坛中有C2PROG V1.5 烧写总结:http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/t/9864.aspx

同时也期待您分享解决方法。

谢谢!

赞(0)
未经允许不得转载:TI中文支持网 » 关于在应用程序中直接跳转到SCI_BOOT的问题(TMS320F28035)
分享到: 更多 (0)