Tag an alle,
Ich geb mal die Hardware an, Atmega 16, STK 500, EADIP 122X32 PIX
Grafikdisplay.
Ich habe mit den Fontgenarator (GLCDFontGenarator 2.1) die
Wochentag-Kürzel für meine Kalender/WeckerFunktion erstellt siehe
Dateianhang.
Größe 10 x 16 px
Jetz folgt die FUnktion die im 2D Array die Wochentage nach NR. 0...6
MO...SO erstellt.
Was ich kier supersuspekt finde ist die quasiCharNummerierung
also "0" mein "M"
"1" das "O" OH
usw siehe Fonttabelle "WochenTag.h
Warum will diese f...ing Tabelle eine Verdopplung ihrer PosNr.??
hab auch schon ander Variablengrößen versucht " int", "char".
"long" und " double" noch nicht
Das überstigt komplett den Inhalt meiner C-Bücher
Danke Grüße
Martin
um ein [O] an das Dipl. zu senden muss ich aber im Array eine 2
stehen haben.
sozusagen keine ungeraden Zahlen das "was weiß ich" möchte halt alles
schön Symetrisch immer durch 2 Teilbar.
Thomas Eckmann schrieb:> ??? schrieb:>> ich versteh die Frage nämlich weiterhin>>>> nicht.>> Das hat wahrscheinlich noch niemand verstanden.
Richtig.
Ich seh allerdings im Code auch nichts, was jetzt irgendwie suspekt
wäre.
Vielleicht wirft den Fragesteller die Tatsache aus der Bahn, dass jede
Fontspalte 16 Bit hoch ist, also aus 2 Bytes besteht, die in y Richtung
übereinander angezeigt werden.
Ansonsten kommt im ganzen Code keine 2 vor und diese 2 ist eben durch
eine Pixelhöhe von 16 für den Font leicht zu erklären.
Karl Heinz Buchegger schrieb:> Ansonsten kommt im ganzen Code keine 2 vor und diese 2 ist eben durch> eine Pixelhöhe von 16 für den Font leicht zu erklären.
Na gut, also Entschuldigung erst mal , ich war mit Kochen dran,
möglicherweise war ich zu hektisch.
1
uint8_twochen_Tag[2][7]={{0,4,0,4,14,6,6},
2
{2,8,8,2,10,12,2}};
diese 2D Array gibt mir die Kürzel für die Wochentage aus.
der Ursprung war jedoch.
So würde es sich mit der Fonttabelle decken
1
uint8_twochen_Tag[2][7]={{0,2,0,2,7,3,3},
2
{1,4,4,1,5,6,1}};
Hier wurden in der Ausgabe immer untere Teile von einem "O" oder der
obere Teil vom einem "A" erzeugt. nach ein nicht gerne genannten Zeit
des Grübelns und Tüffteln war ich entsetzt das die Lösung des Problems
in der Verdopplung der PositionNr. der Fonttabelle lag.
Vor einigen Wochen habe ich mir Ziffern in 3Byte Höhe erstellt und hier
wurde je Positionsnummer zwar 3mal inkrementiert ( um die drei Zeilen
aufzubauen) ich behaupte aber jetzt einfach mal das die Ziffern mit
Ihrer "Basisadresse" aufgerufen wurden. (auf keinen FAll als "ich hab
recht" verstehen)
Da ich hier in Anlenung zu den großen Ziffern gearbeitet habe, war ich
ja so entsetzt das ich ein Zeichen mit seinem doppelten Tabellenindex
ansprechen muss.
Was kbuchegg da erwähnt würde ja dann auch bedeuten, dass ein ASCII
Zeichensatz mit 16px Höhe dann für ein "W" eine dez 174 (2*87) erwartet.
wenn dem so ist werde ich stillscheigen anfangen weiter Probleme zu
produziern, die nur ich nicht verstehe.
Danke vorerst
Martin
Wie kommst du darauf?
Jedes zeichen besteht aus 20 Bytes im Font. Deine Formel
10* (wochen_Tag[0][x]+j
rechnet aber nur in 10-er Einheiten. Also musst du im wochen_Tag Array
eine Korrektur vornehmen, die berücksichtigt, dass jedes Zeichen aus 2
Stück 10-er Einheiten besteht.
Bleibt in der Zeichenmatrix vielleicht immer eine Zeile leer, so dass
keine ungeraden Werte in der Tabelle auftreten für eine Cursorzeile)
bzw. eine Spalte für einen Buchstabenabstand?
G a s t schrieb:> Cursorzeile)> bzw. eine Spalte für einen Buchstabenabstand?
nö, ich hab zwar eine Breite von 10 px die erste und letzt Spalte sind
kpl.0x00 unbenutzt
ebenso die unterste Pixelreihe oder Courserzeile.also kein 0xFx