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.

TMDsevm6678le i2c boot image



各位TI的技术支持好:我使用的是TMDSEVM6678LE开发板,mcsdk_2_01_02_06,在测试I2C boot,测试了很久也没成功,我的镜像文件的生成过程如下所示:

1..out—>boot table:

         通过hex6x.exe(C:\ti\ccsv5\tools\compiler\c6000_7.4.4\bin)和配置引导文件.rmd,其文件内容为:

         simple0.out

         -a

        -boot

        -e _c_int00

       -order L

        

       ROMS

       {

               ROM1:  org = 0x400, length = 0x10000, memwidth = 32, romwidth = 32

               files = { simple0.btbl }

      }    

         得到simple0.btbl文件。

2.boot table转换成bootloader格式:

         使用bconvert64x.exe转化,得到.btbl.be文件,使用-le命令。

         命令格式:bconvert64x.exe  –le  simple0.btbl  simple0.btbl.be

3.把.btbl.be文件转化为.btbl.be.i2c文件。

         使用b2i2c.exe转化,得到 simple0.btbl.be.i2c文件。

         命令格式:b2i2c.exe  simple0.btbl.be  simple0.btbl.be.i2c。

4. 把.btbl.be.i2c文件转化为.btbl.be.i2c.ccs文件。

         使用b2ccs.exe转化,得到 simple0.btbl.be.i2c.ccs文件。

         命令格式:b2ccs.exe  simple0.btbl.be.i2c  simple0.btbl.be.i2c.ccs。

5.把.btbl.be.i2c.ccs文件转化为.ccs文件。

         使用romparse.exe转化,配合i2c.map文件。

         命令格式:romparse.exe  i2c.map。得到i2crom.ccs。

         I2c.map文件内容如下:

         section {

        boot_mode = 40

        param_index = 0

        options = 1

        multi_i2c_id = 0

        my_i2c_id = 10

        core_freq_mhz = 122

        i2c_clk_freq_khz = 50

        exe_file = "simple0.btbl.be.i2c.ccs"

        dev_addr_ext = 0x50

        next_dev_addr = 0x50

        next_dev_addr_ext = 0x51

        address_delay = 100

        sw_pll_prediv = 0

        sw_pll_mult = 0

        sw_pll_postdiv = 0

        sw_pll_flags = 0

}

6.将.ccs文件转化为.swap.bin文件。

         通过ccs2bin.exe转化。

         命令格式为:ccs2bin.exe  –swap  i2crom.ccs  i2crom.swap.bin。

 

7.使用C:\ti\mcsdk_2_01_02_06\tools\writer\eeprom中的evmc6678l工程将i2crom.ccs  i2crom.swap.bin烧写到eeprom中。

备注: view the memory address 0x0C000000.

 

拨码开关设置:

烧写前为no boot模式:sw3->sw6设置为:(off, on, on, on) (on, on, on, on) (on, on, on, on) (on, on, on, on)

 

烧写完重新上电sw3->sw6设置为:(off, off, on, off) (on, on, on, on) (on, on, on, on) (on, on, on, on)

 

 

烧写完后,程序不能重现仿真器下的现象,是哪里出错了呢?还请各位大神指点迷津。