Other Parts Discussed in Thread: TMS320F280049C
Tool/software:
Hi all,
we are currently experiencing issues with the generation of binary images for our TMS320F280049C microcontroller firmware. When generating images with the binary option it seems to output a binary which does not contain any fill bytes which makes the binary itself basically useless. I already found some posts regarding this issue with some possible solutions but none of them worked as expected or I just could not get it running like it was described.
One proposed solution was to use tiobj2bin which I found in my code generation tools as a .bat file. When I tried running it with the out file of our firmware it said "C28x files built with --abi=eabi are not supported" because we are using the eabi build. Is there another way to use it in our case or is it just not possible with eabi builds?
Another proposed solution was to use the hex2000 with --binary and --image options. First of all it complained because it requires ROMS directive in --image mode so I tried to find out what I have to add here. After looking through some posts it seemed like I have to add a separate file at the end of the hex2000 command which then contains a ROMS section which states the start address and the length of the image. This is what my file looked like after finding some suggestions in other posts:
ROMS
{
ALL_MEM : origin = 0x83040, length = 0x8000
}
The command used for generation was:
hex2000 --memwidth=16 --romwidth=16 --diag_wrap=off --binary --image -o "image.bin" "image.out" ROMS.hex
Unfortunately it did not work that way due to a syntax error
ROMS
^
error: syntax error
Since I did not find an appropriate documentation how I can generate a binary image I wanted to try my luck here. Can anyone tell me about the easiest way to generate a consistent binary image during the build with filled holes? Even with --array mode of hex2000 it seems to be working like it should. Probably it is also easier to generate the binary from a hex file with another external tool. I understand that it is necessary to provide a start address to the conversion due to possible fill at the beginning but for me it does not really make sense to define the length fixed like it is inside the ROMS directive. This would get the build more complicated to reduce the binary size to the minimum length possible when the length needs to be defined inside the ROMS file.
Best regards
Wolfgang