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/TM4C123GH6PM: Generating binary file .bin instead of intel .hex file

Part Number: TM4C123GH6PM
Other Parts Discussed in Thread: TM4C129XNCZAD

Tool/software: Code Composer Studio

Is there any way to convert the intel hex file to a binary file or directly generating a binary file from code composer v9 as its not from the option , to burn the .bin file using boot loader and LM flash programmer?

  • Hello,

    There should be a thread on the forum about hex utility usage. It can be used as post-build event to generate binary out of your hex.

  • Thanks for your fast reply ,

     i checked the thread and used this command as it is "${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin""${BuildArtifactFileName}""${BuildArtifactFileBaseName}.bin""${CG_TOOL_ROOT}/bin/armofd""${CG_TOOL_ROOT}/bin/armhex""${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

    in the Post-build steps section inside the build options then rebuild the project but the .bin file wasnt generated is there something missing in this command?

  • Hi again,

    For ARM flow we better wait till guru jump in.

    As for me, for C6000 I have hex utility option right in the build settings, so technically it is not general post-build step. Just take a look on screenshot

  • Hi,

    The command looks ok, but can you see if the Console output shows a specific error?

    If it is successful, the tail of the build should be something similar to the output below (copied from the blinky Tivaware example):

    Console said:

    Building target: "blinky.out"
    Invoking: ARM Linker
    "C:/CCSv10_0_0/ccs/tools/compiler/ti-cgt-arm_20.2.0.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O2 --define=ccs="ccs" --define=PART_TM4C129XNCZAD --define=TARGET_IS_TM4C129_RA0 -g --gcc --diag_warning=225 --diag_wrap=off --display_error_number --gen_func_subsections=on --abi=eabi --ual -z -m"blinky_ccs.map" --heap_size=0 --stack_size=512 -i"C:/CCSv10_0_0/ccs/tools/compiler/ti-cgt-arm_20.2.0.LTS/lib" -i"C:/CCSv10_0_0/ccs/tools/compiler/ti-cgt-arm_20.2.0.LTS/include" --reread_libs --diag_wrap=off --display_error_number --warn_sections --xml_link_info="blinky_linkInfo.xml" --rom_model -o "blinky.out" "./blinky.obj" "./startup_ccs.obj" "../blinky_ccs.cmd" -l"C:/ti/TivaWare_C_Series-2.2.0.295/driverlib/ccs/Debug/driverlib.lib" -llibc.a
    <Linking>
    Finished building target: "blinky.out"

    "C:/CCSv10_0_0/ccs/utils/tiobj2bin/tiobj2bin" "blinky.out" "blinky.bin" "C:/CCSv10_0_0/ccs/tools/compiler/ti-cgt-arm_20.2.0.LTS/bin/armofd" "C:/CCSv10_0_0/ccs/tools/compiler/ti-cgt-arm_20.2.0.LTS/bin/armhex" "C:/CCSv10_0_0/ccs/utils/tiobj2bin/mkhex4bin"

    **** Build Finished ****

    I am not sure if it was an artifact of the copy/paste on your post, but the command line does not have any spaces between the different parameters. It should be something like this:

    Console said:

    "${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

    Regards,

    Rafael

  • It worked!. The command seems to have spaces thanks for your reply