Sveiki kolegos,
Truputį paklydau jaučiu, bandau žaisti su DS18B20 temperatūros davikliu, siunčiu jam 0x33, kad prisiduotų savo ROM kodą (64 bitai), gaunu ir išaugau į:
uint8_t ROM_address[] = { 0, 0, 0, 0, 0, 0, 0, 0 };
Kaip ir viskas ten suvažiuoja, bet va permesti visą tą reikalą į LCD nesigauna. Naudoju ST7735 biblioteką, ten rašymui į displėjų yra:
void ST7735_WriteString(uint16_t x, uint16_t y, const char* str, FontDef font, uint16_t color, uint16_t bgcolor)
Nu ir va ties šita viena jau nebesuprantu, ST7735 funkcijai reikia paduoti const char*, o turiu uint8_t, nors abu 8 baitų, bet kompileris kiekiasi ir ekrane nieko gero neparašo. Jaučiu čia dėl to, kad pasiklydau tarp pointerių ir duomenų, tik nesumastau, kaip perkonvertuot. Bent jau pirmam baitui toks variantas neveikia:
const char* ROM_Address = ROM_address[0];
O galvojau po to tik cikliuką prasuksiu ir visus baitus susirinksiu...
Tai va, kaip čia prasikonvertuot ?