Hi, I am trying to write a constant value into a particular memory address, say for instance I am trying to write decimal value 8235 into a memory location by converting it into an appropriate hex file. But when I read the data, at the same address where the value was written, back onto my LCD,I get some another value. Is there a problem with the data format (little endian, big endian)? How would i verify the data format? Are there any tools available for the same?
"Have you checked to see if it is just byte-reversed, or printing as a numeric value instead of ASCII-coded characters, or wrong" Yes, it is printing some numeric value. Let me give values. Input Number: 8236 Hex file's output: address values 00400 00 2c 00 00 00 20 00 00 00 Read on LCD: 0215
"Input Number: 8236 Hex file's output: address values 00400 00 2c 00 00 00 20 00 00 00 Read on LCD: 0215" Well, 8236 = 0x202C, doesn't it? So there's a clue! Since internal data representations, and the way the compiler handles reading data from code space, are entirely implementation-defined you really need to go to the appropriate forum!