Other Parts Discussed in Thread:C2000WARE
项目中想设计一个方便用户更新使用的bootloader烧写功能,用的是dsp28335,芯片自带的bootloader是在上电复位后查询四个IO口的高低电平进入对应模式。现在想在dsp运行程序过程中,通过发送一个指令,使dsp不用复位及查询IO口电平即可转到bootloader烧写模式。
我尝试过在dsp运行中,先将查询的IO口置位,再强行跳转地址到0x3FFC00(RESET后的引导代码地址),但失败了,现象是IO口在地址跳转后又自动全部跳转至高电平。所以我总结失败原因是这四个IO口电平必须由外界给入而不能内部定义。
请问dsp28335必须要先上电复位才能转到bootloader模式吗?可以通过自己编写程序实现在dsp运行中发送一个指令即可转到bootloader的SCIA烧写模式吗?能否提供一下这部分程序呢?谢谢!
Green Deng:
就我目前已知的boot方式来说,必须要复位(但不一定是上电复位)才能转到bootloader模式,然后查询IO口电平也是必须的。
,
Wentao Wu:
那请问,如果想要使用芯片自带的bootloader程序烧写的话,上位机该如何设计呢?我想设计一个类似于c2prog的上位机,我看烧写的流程是先和dsp连接,然后擦除数据,再发送数据至dsp的flash中。这里应该是和dsp有一个协议,请问这里的协议是怎么定的,dsp28335的sci串口的波特率定的是多少?(以后如果想改用can方式烧写的话,上位机需要怎么修改?)第一次设计,懂的实在不多,谢谢帮助!
,
Green Deng:
上位机程序这个我也没接触过多少,给不了什么建议。
我看你的描述似乎是想要开发二次bootloader程序?如果是的话你可以参考一下TI例程:
C:\ti\c2000\C2000Ware_3_04_00_00\device_support\f2833x\examples\f28335_flash_kernel
以及
C:\ti\c2000\C2000Ware_3_04_00_00\device_support\f2833x\examples\f28335_can_flash_kernel
,
Wentao Wu:
您好,我在网上能找到的c2prog各版本中,没有找到支持can烧写的版本,全部都是只开放了串口烧写。请问您知道有哪个版本的c2prog是支持can烧写的吗?感谢!
,
Green Deng:
据我所知c2prog是可以支持can烧写的,但是据说是要收费的,而SCI不收费。这是软件官网主页:www.codeskin.com/programmer
这是FAQ,其中Q7中有提到CAN烧写:www.codeskin.com/c2prog-faq