#define ArrLen(x) (sizeof(x)/sizeof(x[0]))
String s = "\u2588";
const char* ae_lo = "\u00E6"; // æ
const char* ae_up = "\u00C6";
char hex[3];
const char str[] = "\u00E6\u00C6";
const char* letters[] = {
"\u00E6", "\u00C6", // æ / Æ
"\u00F8", "\u00D8", // ø / Ø
"\u00E5", "\u00C5" // å / Å
};
const char* t9[3][3] = {
{"\u00E6", "\u00F8", "\u00E5"},
{"\u00C6", "\u00D8", "\u00C5"},
{"","",""},
};
const char myTxt[] = "abcdefghijklmnopqrstuvwxyz\u00E6\u00F8\u00E5";
const char* getAscii(char* str, char dst[] = hex) {
strcpy(dst, str);
dst[2] = '\0';
return (const char*)dst;
}
int16_t parseHexChar(const char* hexStr) {
return (int16_t)strtol(hexStr, NULL, 16);
}
void setup() {
Serial.begin(9600);
for (int i=0; i<strlen(myTxt); i++) {
if (!isAscii(myTxt[i])) {
const char* ae = getAscii( &(myTxt[i++]) );
Serial.println(i), Serial.print(": "),
Serial.println(ae);
}
}
const char* aee = &(hex[0]);
Serial.print("ae: "); Serial.println(aee);
unsigned char hx[2];
hx[0] = hex[0];
hx[1] = hex[1];
Serial.println(hx);
/*
char buffer[3];
unsigned char number[2];
memcpy(number, 2, hex);
sprintf(buffer, "%02X", number);
Serial.print("sprintf: "); Serial.println(buffer);
Serial.println("\xC3");
const char* ae = getAscii( &(myTxt[26]) );
Serial.print("ae: "); Serial.println(atoi(ae));
Serial.print("int: "); Serial.println(parseHexChar("E5"));
char tx_data[3];
sprintf(tx_data, "%02X", ae);
Serial.println(tx_data);
char x[] = "\xE6";
long y = strtol(&x[3], 0,16);
Serial.println(y);
*/
/*
Serial.print("ae[0]: "); Serial.println((int)ae[0], HEX);
Serial.print("ae[1]: "); Serial.println((int)ae[1], HEX);
Serial.println("\xE6");
int hexbyt = 0xE6;
Serial.write(hexbyt);
uint8_t src = 0xE6; // source byte ( DEC 107 | BIN 0b1101011 )
src &= 0b1111; // isolate lower 4 bits with bitmask; result: 1011
src = src & (1 << 8)-1; // isolate 6 lower bits; result: 101011
Serial.println(src, HEX);
*/
//getAscii("hello mate!", 6);
//Serial.println(getAscii(myTxt, 26));
/*
while(1);
for (int i=0; i<strlen(myTxt); i++)
if (!isAscii(myTxt[i]))
Serial.print(i), Serial.print(" "), Serial.println(myTxt[i]);
while(1);
for (int i=0; i<strlen(myTxt); i++) {
Serial.print(myTxt[i]);
Serial.print(",");
//Serial.println(isAscii(myTxt[i]));
}
Serial.println();
for (int i=0; i<strlen(myTxt); i++) {
Serial.print((isAscii(myTxt[i]))?"1":"0");
Serial.print(",");
//Serial.println(isAscii(myTxt[i]));
}
Serial.println();
*/
/*
Serial.println(str);
for (int i=0; i<ArrLen(letters); i++) {
Serial.println(letters[i]);
}
Serial.println(letters[0][0]);
*/
/*
Serial.println(s);
Serial.println(ae_lo);
strcpy(hex, ae_lo);
Serial.println(hex);
Serial.print(hex[0], HEX); Serial.print(" "); Serial.println(hex[1], HEX);
Serial.print(0xC3); Serial.print(" "); Serial.println(0xA6);
Serial.print((char)195); Serial.print(" "); Serial.println((char)166);
*/
}
void loop() {
// put your main code here, to run repeatedly:
}