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.

CCS/TMS320F28377D: what Diffrent of *.hex and *.out when program using UNiflash

Part Number: TMS320F28377D
Other Parts Discussed in Thread: UNIFLASH, C2000WARE

Tool/software: Code Composer Studio

hi! everybody

    Now i meet an problem when program 28377d using uniflash,  when i program using *.hex file it can complete the program but after i reset the 28377d it can not work normally.

then i reprogram using *.out file. it can work normally.

  my question is  what the  differents of   *.hex between the *.out file, when i program using uniflash?

thank you!

shook

  • Other than the fact that the .out and .hex files are in different formats, they should program the same way with Uniflash.

    What command/options are you using to convert the .out to .hex? 

    How do you tell that the program runs properly to completion after programming the .hex file but not after reset? Is it through visual inspection of LED or something?

    shook said:
    then i reprogram using *.out file. it can work normally.

    So the .out file works after the device is reset as well?

  • Since I haven’t heard back from you, I’m assuming you were able to move past this issue. If not, please post a reply below with the requested details. Thanks!
  • hi,AratiG

      What command/options are you using to convert the .out to .hex?  The option is

    The program work not normally means if i program use .HEX, Some function in my program can not work(for example I my program the can communication can not work), but if i program use .out file it can work normally.

    thank you!

    best regard

    shook

  • Aarti is out.  The options that I see used on other threads for C2000 are slightly different.  romwidth is set to 16.  And ordering as MS.  Intel format was not selected.

    Romwidth and order are set on this screen:

    Output format setting of intel can be cleared here:

  • Another consideration when using the C2000 hex conversion utility (as per this post) is that it generates separate hex files for page 0 and page 1. If this is happening in your case, you will notice a warning from the hex utility at build time (that data is being written to a separate file). If two hex files are generated but only one file is loaded, then you will miss the other page's contents and the program will not run as expected.

    To avoid this issue, make sure to map any initialized sections in your linker command file to Page 0 memory instead of Page 1. For instance, if .econst is mapped to Page 1 in the linker command file (as it is in some default files provided in C2000Ware), change that mapping to a memory region in Page 0. Then re-run the hex conversion, and verify that only a single hex file is generated before trying to load and run it.