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.

例子程序自实现boot然后启动到应用程序,烧写后不能启动,有些问题想请教TI工程师。

Other Parts Discussed in Thread: TMS320C6424

       今天使用evmc6424评估板(原TI开发板设计公司spectrumdigital的一款标准TMS320C6424评估板),spectrumdigital美国工程师给了我一个BlinkEVM6424的工程文件,实现程序的boot与LED点灯例子。

         工程生成两个.obj文件(Boot.obj,Led.obj),Boot.obj实现程序.text段,.cinit段,.switch段搬运到TMS320C6424的RAM中,最后并实现跳转到_c_int00处。 Led.obj实现LED点灯闪烁。

        cmd文件如下:我截屏了一段图片:

                      

         BlinkEVM6424工程文件时设计Flashburn软件公司(Software Design Solutions, Inc)开发。我介绍了半天这个工程的目的是,不要怀疑这个工程的错误性。

          我想请教几个问题,希望工程师正面回答我的疑问,如有不当请谅解!

         问题1:这个工程文件,我的评估板是否引脚必须配置成EMIF直接启动(without AIS格式),不能用AIS格式的EMIF启动。

         问题2:生成后的ais转成hex格式如下:

S011000075626C446156696E63692E6865789A

S325420000000100.........

...............................................

像这样的hex格式我是这样读出数据烧写的,我读hex文件全部依次从0x42000000写入,我这样写的数据正确吗???

S011                            //hex文件内容                         

            0x31313053      //需要写入norflash数据内容:S的ASII码是0x53,  0的ASII码0x30,   1的ASII码0x31

1000                            //hex文件内容  

           0x30303031   //需要写入norflash数据内容

...........................

...........................      

  • dong wei1 说:
     问题1:这个工程文件,我的评估板是否引脚必须配置成EMIF直接启动(without AIS格式),不能用AIS格式的EMIF启动。

    从上面cmd文件来看,它的意思是"bootload"段是一个二级boot程序,定位到NOR flash 0x42000000,即从0x42000000开始运行的。所以这里的启动模式肯定不是AIS,而是直接从EMIF flash启动。这里想达到的目的是通过汇编写一个二级boot,与应用程序放在一个工程里,将二级boot通过cmd定位到flash的开始部分,以达到直接启动的目的,二级boot启动后,搬移后面的应用程序再跳到应用程序。

    另外,还要看这个.out转成.bin或者hex文件所用的命令是什么,我估计是boot table格式。

    而hex,还是bin那属于编码的问题.

    cmd文件里关键看run的地址,代码是按run地址link和运行的,load地址无所谓,不参与工程link过程。

  • 今天又研究了一下那个例子生成的hex文件格式,感觉TI文档User's Guide 说不清楚。不太明白!

                    那个例子转换hex文件cmd命令用的ascii格式.因为他的转换cmd命令文件。

    BlinkEVM6424.out
    -a

    -memwidth 8

    -image

                  用hex6x.exe工具加转换cmd文件转换成hex格式文件(BlinkEVM6424.hex )。然后用Flashburn3,FBTCEVM6424.out,BlinkEVM6424_hex.cmd接可以把BlinkEVM6424.hex下载到EVM6424评估板中,就可以正常运行。

            我截屏一段生成的BlinkEVM6424.hex文件。查考了ASCII-Hex Object Format感觉和TMS320C6000 7.4User's Guide有出入?不明白生成的hex格式具体内容是什么意思?希望指点!