hi everyone...
i am facing a problem in my college project...
i have a 16bit unsigned integer variable and i need to store it in the 24C02 EEPROM, but that saves 8bit variable at a time...
the number i need to save is in the form of a decimal integer, how do i split it into 2 unsigned char variables..
i am using the following method
unsigned int val; unsigned char a,b; a= (val & 0xFF00)>>8; b=(val * 0x00FF);
is this code right?
and when i read it back i read it like this
unsigned int val; val= (((a & 0x00FF)<<8) | (b & 0x00FF));
is this code right? or is there any other way?
note: i obtain val initially from the user input by using this routine
unsigned int Temp2=0; Temp2*=10; Temp2+=Keypress-'0';
Keypress is the input obtained from the keyboard which is ASCII and in the range '0' to '9' and Temp2 is stored in the EEPROM using the Routine i tried
Error:
i tried saving 1234 and when i read it back i got 1024 6666 was read back as 6656 5555 was read back as 5376 1600 was read back as 1536
He has never heard about Google, so the only way to get forward is by asking on the net.
That the answers have already been written and published, making Google searches a must faster route to progression, haven't sunk in yet...