Keresés

Hirdetés

Új hozzászólás Aktív témák

  • Janos250

    őstag

    válasz gabikaa39 #12742 üzenetére

    Nem abban vannak a karakterek képei, hanem a glcdfont.c-ben. Azt írd át!
    Mondom ezt úgy, hogy az Adafruit rendszerét nagyon régen próbáltam, azóta saját könyvtárat használok, most csak belenéztem a fájlokba.

    Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.

  • DigitXT

    félisten

    válasz gabikaa39 #12753 üzenetére

    Ez azért lehet, mert a nagy Á betű két bájton jelenik meg (c3 81) a szerkesztőben. Ha ezeket akaratodon kívül külön-külön íratod ki, akkor jelenhet meg kirksz-kraksz.

    Rákerestem erre a glcdfont.c-re, és megpróbáltam megfejteni neked a dolgot.:R (Sosem foglalkoztam a témával, azt se tudom, eszik-e, vagy isszák az Adafruitot.)

    A PROGMEM tartalmát úgy kell értelmezni, hogy minden egyes karakter grafikus "képét" adja meg: 5 bájt van minden karakterre (5x7-es mátrix esetén bőven* elég).

    Nem tudom, ki volt az a marha, aki 12 bájtonként tördelte be a kódot, aminek ugye pont semmi köze nincs az egyes karakterekhez, de legalább az umlaut a-t (ä) már külön bejelölte, így jól látszik, hogy melyik 5 bájt tartozik össze, le is lehet rajzolni:

    0x22=0100010
    0x54=1010100
    0x54=1010100
    0x78=1111000
    0x42=1000010

    Vegyük észre, hogy a fenti táblában hanyatt van esve a betű = fordítsuk el balra.:D

    A megoldás, hogy kitalálod, hogyan nézzen ki az a bizonyos Á betű, aztán ezt "jól lekódolod" és beilleszted a progmem megfelelő pozíciójába... Nem intuitív, tudom... (Egy bájt egy "pixeloszlopot" ír le, ebből van végül 5 db minden egyes karakterre...)

    Talán a legegyszerűbb az umlaut A-t meghekkelni: levenni a pöttyöt a bal oldaláról, és onnantól olyan, mint egy Á. Vagy legalábbis arra emlékeztet: 7D helyett 7C-t...

    Persze azt tudni kell, hogy pontosan melyik karakterrel kell ilyet kiírni. A kis ä a 132-es pozícióban van "általában", és valóban: ebben a kódban is ott van definiálva.:)) Nézd el nekem, hogy a nagyot nem tudtam fejből, az a 142-es? Talált: Ä

    És ha már itt tartunk, fejtsük meg azt a függőleges vonalat is.:) Az a c3, azaz 195 0x00 0x00 0x00 0xFF 0x10, most hogy már látjuk a mátrixot, ez egyértelműen egy függőleges vonal, és egy pötty tőle jobbra: ilyesmi.├ (Tipikus UTF-8-as "karakter".) Az utána következő u-szerű karakter meg elvileg egy ü akar lenni, legalábbis ezt hámoztam ki a kódból. És ez teljesen normális is, próbálj beírni egy ALT+129-et!;)

    *: 1 bitet mindig elpazarol, ha úgy tetszik, hiszen csak 7 bitet használ ki a 8-ból.:DDD

Új hozzászólás Aktív témák