hi,
the printf format is limited why? I see the default setting of --printf_support is full.
the expected output is "ISP00102"
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.
Oh, I did not know you wanted it that way. In that case I think you have to change it to this:
printf("ISP 0x%3x 0x%2x\r\n", 1, 2);
Notice that there is no dot (".") since you want to format the integer-part, not the fractional-part.
Hope I am right.
Another way to look is with the names utility armnm. From a command line interface, execute:
>>> armnm -g file.out | find "printf"
Show the output in your next post.
Thanks and regards,
-George
hi,
you are right. TI compiler RTS library is overrided.
the project I used is based on a safeRTOS which have a library (I guess from the output of the armnm command).
I create a simple project to call the printf and use the armnm command to find the __TI_printfi.
what is the mechanism about the overriding the RTS library of TI compiler?
e.g. the low level of IO functions fputc() ?
eric said:what is the mechanism about the overriding the RTS library of TI compiler?
Some library, other than the RTS library supplied with the compiler, provides the implementation of printf you use. To see which library that may be, use the linker option --scan_libraries . It is described in the ARM assembly tools manual.
Thanks and regards,
-George