Hi folks,
I'm starting to get into the Arduino world, and stumbled across an interesting issue I can't seem to find an answer for.
I'm writing a software that receives Char arrays from the computer, and writes them to an LCD (currently digole, will be switched over to u8glib once the hardware gets here).
un-fortunatly they data structure is such, that I need to box out specific letters in the string.
transferring two 130 byte arrays and iterrating over them to mark the correct chars is very cycle costly.
to save that, I've decided to create a custom font that has the highlighted chars as such in the first place (i.e, data only contains capital letters, so lower case is now a mirror image font of the uppercase). but data also contains other chars that need highlighting, (asterisks, numbers, punctuation marks etc.) I've put all those into an 128 char num offset compated to the real char. (i.e space is 32, invertspace is 160). and as ASCII is 127 chars (7 bit) I can use 8 bits instead (255 chars, which is more then enough).
but when I try and print the data (byte, unsigned char or uint8_t) in only prints out char number or just throws an exception as Strings cannot contain unsigned chars.
before I go over the code and try and compress everything into 7 bits (not sure it's even possible, as I cannot print control chars in a string, even with custom font), is there a method that I've missed to handle more then 127 chars on arduino?