This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F2407A在线更新程序

Other Parts Discussed in Thread: SPRC141, SPRC074

大家好,有谁尝试过使用LF2407A的SCITXD和SCIRXD两个引脚更新程序,不使用BOOT_EN和reset等引脚。

比较着急,现在东西已经做出来,就有这一个串口通信,JTAG烧写100多片比较麻烦,能否直接使用串口烧写程序。

  • yanhui,

    可以使用CodeSkin的C2prog,支持2407的串口烧写。

    Eric

  • 你好,首先谢谢你的答复!

    请问具体怎么实现。

    有没有文档说明或者例程。

    再次谢谢你!!

  • yanhui

    首先你要生成intel-hex格式的hex文件. 然后下载c2prog,在上面选择2407的芯片,然后加载hex文件,应该就可以了。

    240x的boot ROM有bootloader支持sci/spi加载程序。

    Boot ROM is a 256-word ROM memory-mapped in program space 0000−00FF. This ROM will be enabled if the BOOT_ENpin is low during reset. The BOOT_ENbit (bit 3 of the SCSR2 register) will be set to 0 if the BOOT_EN pin is low at reset. Boot ROM can also be enabled by writing 0 to the SCSR2.3 bit and disabled by writing 1 to this bit. The boot ROM has a generic bootloader to transfer code through SCI or SPI ports. The incoming code should disable the BOOT_ROM bit by writing 1 to bit 3 of the SCSR2 register, or else, the whole Flash array will not be enabled.

    Eric

  • 你好,谢谢您的回复!

    我简要的介绍一下我们的系统:我们是用串口RS422总线把100多个LF2407A串接起来,想用RS422串口烧写这100多个LF2407A。

    我们实验了让100多个LF2407A其中的一个先复位,把boot_en引脚拉低,用C2porg能烧写这个芯片。

    但是需要额外的硬件电路,并且对每一个芯片都这样操作,很麻烦,关键是客户不允许。

    现在的问题是:能否不对boot_en引脚控制(单单使用串口两个引脚),利用上位机使DSP进入烧写程序状态,再用C2prog烧写。

    即能否使主机利用MODBUS协议控制哪一个芯片进入烧写程序状态,然后再用C2prog烧写。

    谢谢

  • 你好, 再次麻烦你了,我们现在自己要编写一个在线更新2407A的上位机界面,在TI官网上也下载了SPRC141 的文件包和SPRC074的文件包,打开看到了里面的文件了,但是不知道怎么使用。这两个文件包介绍的 Embedding Flash Programming into TMS320LF240x Applications 和Serial Port Flash Programming Utility ,我现在不明白的是,我用串口调试助手给处于BOOT状态下的2407发送0x0d 数据,之后我要传输的是引导内核吗,之后再是用户自己的程序,但是没有说明白引导内核和用户自己的程序是什么格式的,是.out格式还是.bin还是.hex格式。期望得到一个传输的协议和流程

  • yanhui,

    首先,我们来确认一下几个情况:

    1,你们打算自己编写2407的下载软件,这么说你们应该是不打算用c2prog了。

    2,你上一个帖子说客户不同意对BOOT引脚进行控制来下载程序,但是c2prog就是使用boot模式来下载程序的,就必须要对boot引脚进行控制,使其进入boot模式。我认为这也是你们为什么需要自己开发上位机软件的部分原因。但是你提及到的两个文件 Embedding Flash Programming into TMS320LF240x Applications 和Serial Port Flash Programming Utility ,如果还是需要对boot引脚进行控制的话,那我认为跟c2prog没什么区别。关于这两个文档,我在E2E上看到有相关的帖子,希望对你有帮助。

    http://e2e.ti.com/support/microcontrollers/c2000/f/171/p/110179/401141.aspx#401141

     

    3,如果只希望由串口引脚就能够烧写的话,应该把bootloader烧写到芯片中,然后当串口接收到升级指令后就跳出正常运行的程序,运行到bootloader之中,然后接收上位机发送过来的数据。所以bootloader中应该包含串口通信功能,以及Flash API烧写功能。

     

  • 非常感谢您的答复,我们目前的方案和您第3条的不谋而合,已经成功。