If you are wanting to convert to ASCii, just add $30 to numeric values. This works only for single digits 0 >> 9 though.
If you are wanting to convert to ASCii, just add $30 to numeric values. This works only for single digits 0 >> 9 though.
The addition of $30 will not convert numeric 123 in a three byte ascii value as requested. Either way two words are not enough in the first place. For a byte you need three bytes after the conversion, so for two bytes you need total 6 bytes holding the ascii values.
I suppose t5 and t6 are bytes. The following will read three bytes for t5 and another three bytes for t6 into temp array. If value of say t5 is 5 then the array temp will be "0","0","5" in ascii format.
arrayread temp,[dec3 t5,dec3 t6]
then you can transfer the 6 bytes to the place you want in the final array.
Ioannis
for a 16 byte buffer going to this much trouble to format the last 8 bytes seems unproductive
why not just format the whole thing properly in one go to start with ?
Warning I'm not a teacher
Why update whole screen all the time, when I need only two digits to be changed?
Why update the buffer at all when you can do partial screen updates ?
if the buffer is not part of the screen update process then what purpose does it serve ?
makes little to no sense to me
Warning I'm not a teacher
The screen update routine is called once per second, according to time change, which is provided by DS3231.
However, other subroutines are not synced to clock seconds and have own "schedule" of being called.
So it's quite logical to have data ready, but update screen once per second.
Bookmarks