This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

convert object file to hex?

Hi all

I am working on STM32F030R8 chip,using Keil MDK. For every unit, it carries it own characteristics, and hence for every calibrated unit, I need to re-flash a part of the flash to put the characteristic in.

For example, the characteristics is an array of bytes, so I create a characteristic.c file to put the data at specific location: (0x0800F000)

const unsigned char array[] __attribute__(at(0x0800F000)) = {1, 2, 3, 4, 5, 6} ;

The compiler will generates object file: characteristic.o

Now the question is, how can I get this object file converted to a hex file, that I can just page flash into the target? I think there should have simple command from the MDK suite.

Thanks

Calvin

Parents
  • (In fact, the constant record does not even exist in the project build hex file).

    Which makes any use of that data undefined behaviour. That gives compilers leeway to do whatever they want with the entire program from that point on.

    I hope you did remember to make sure the memory area you keep those data in is actually forbidden for use by the compiler of the main code.

    (the free mdk-lite can do the job)

    Can: possibly. Is allowed to for that purpose: quite certainly no. You'll want to re-read your license about that a bit more closely.

Reply
  • (In fact, the constant record does not even exist in the project build hex file).

    Which makes any use of that data undefined behaviour. That gives compilers leeway to do whatever they want with the entire program from that point on.

    I hope you did remember to make sure the memory area you keep those data in is actually forbidden for use by the compiler of the main code.

    (the free mdk-lite can do the job)

    Can: possibly. Is allowed to for that purpose: quite certainly no. You'll want to re-read your license about that a bit more closely.

Children