constexpr char ae = -26; // xE6 \u00E6
constexpr char oe = -8; // xF8 \u00F8
constexpr char aa = -27; // xE5 \u00E5
const char str[] = "æøåÆØÅ";
char buffer[64] = { '\0' };
char hex_str[2];
unsigned char hex[3] = { 0x00 };
// -------------------------------------------------
char* hex2char(unsigned char x, char hex[] = hex_str) {
hex[0] = (char)x;
hex[1] = '\0';
return hex;
}
// -------------------------------------------------
void setup() {
// put your setup code here, to run once:
Serial1.begin(115200);
Serial1.println("");
unsigned char x = (unsigned char)str[0];
const char* hx = hex2char(x);
Serial1.println(x);
Serial1.println(hx);
/*
Serial1.println(ae);
char newChar = 'æ';
Serial1.println((int8_t)newChar); // Prints: -26
Serial1.println((int)newChar);
while (1);
*/
/*
int mod = 0;
buffer[0] = '\0';
for (int i=0; i<strlen(str); i++) {
int16_t x = str[i];
uint8_t hi = x & 0xF0;
uint8_t lo = x & 0x0F;
Serial1.print((char)x); Serial1.print(" -> 0x");
Serial1.print(hi,HEX); Serial1.print(",0x");
Serial1.println(lo,HEX);
}
*/
}
void loop() {
delay(1); // this speeds up the simulation
}