- Akku Tests und Balkonkraftwerk Speicher         
RSS-Feed anzeigen

ASURODISPLAY

Asuro Display-Programmierung Sonderzeichen

Bewerten
Hallo,
ich bin auf der Suche nach jemanden der sich mit dem ASURO und speziell mit der LCD-Zusatzplatine auskennt.Mein Problem ist,dass ich gerne Selbstdefinierte Sonderzeichen, wie in dem Buch"Mehr Spaß mit ASURO-Band 2" beschrieben, programmieren will. Allerdings verstehe ich nicht ganz wie ich das machen muss.
BITTE kann mir jemand weiterhelfen!?

Danke

mit lieben Grüßen

Jürgen S.

"Asuro Display-Programmierung Sonderzeichen" bei Twitter speichern "Asuro Display-Programmierung Sonderzeichen" bei Facebook speichern "Asuro Display-Programmierung Sonderzeichen" bei Mister Wong speichern "Asuro Display-Programmierung Sonderzeichen" bei YiGG.de speichern "Asuro Display-Programmierung Sonderzeichen" bei Google speichern "Asuro Display-Programmierung Sonderzeichen" bei del.icio.us speichern "Asuro Display-Programmierung Sonderzeichen" bei Webnews speichern "Asuro Display-Programmierung Sonderzeichen" bei My Yahoo speichern

Stichworte: - Stichworte bearbeiten
Kategorien
Kategorielos

Kommentare

  1. Avatar von Sternthaler
    Grüß dich ASURODISPLAY,

    erst mal ein "Willkommen im Forum".

    Wie ich deinem Eintrag entnehme, hast du ja das Buch. Ich gehe also einmal davon aus, dass du grundsätzlich weißt wie man den ASURO programmiert.

    Somit glaube ich, dass sich deine Frage eher auf das Prinzip der Sonderzeichen bezieht.
    Ich habe den Band auch und zwar die Auflage 1 von 2007. Wenn du eine andere Auflage hast, dann sind evl. die Kapielnummern und Bildnummern etwas anders.

    Also, da steht auf Seite 95 im Kapitel "6.5.3. ASURO bekommt ein Gesicht" etwas von einer Datei "Aufgabe3.c"
    Direkt oben sind einige C-Variablen als Konstante definiert.
    Ich werde nur für den Wert "const unsigned char Eye_L[8] ..." hier etwas schreiben. Bei den anderen Werten ist es aber genau so.

    Was steht da denn genau:

    const unsigned char Eye_L[8] PROGMEN =
    {0X00,0X00,0X1C,0X00,0X04,0X00,0X01,0x03};

    Die Angabe 0X?? ist jeweils genau ein Byte, also 8 Bit, in heXadezimalschreibweise.
    Das kann man auch in dualschreibweise für die einzelnen Bits angeben. Um es hier jetzt lesbar zu machen schreibe ich nun die 0X??-Angaben untereinander und die entsprechenden Bit-Angaben dahinter. Und dahinter mache ich ein 'Bild' indem ich die 0-en durch ' ' und die 1-en durch 'X'-en ersetze:
    Code:
    0X00 = 0b00000000 = |        |
    0X00 = 0b00000000 = |        |
    0X1C = 0b00011100 = |   XXX  |
    0X00 = 0b00000000 = |        |
    0X04 = 0b00000100 = |     X  |
    0X00 = 0b00000000 = |        |
    0X01 = 0b00000001 = |       X|
    0x03 = 0b00000011 = |      XX|
    Jetzt sieht das 'Bild' schon fast so aus wie im Buch auf Seite 93 im Kapitel "6.4.3. ASURO bekommt ein Gesicht" das linke Auge aussehen soll.

    Nun steht aber auch im Buch, dass nur die rechten 5 Bits aus dem Byte benutzt werden. Also zeige ich dir das 'Bild' mit den Bits, wenn die ersten 3 weggelassen sind:
    Code:
    0X00 = |     |
    0X00 = |     |
    0X1C = |XXX  |
    0X00 = |     |
    0X04 = |  X  |
    0X00 = |     |
    0X01 = |    X|
    0x03 = |   XX|
    Und? Sieht das 'Bild' mit den 'X'-en nun so aus wie im Buch?


    Fazit:
    Für jedes von dir zu 'malende' Sonderzeichen benötigst du 8 Byte. Die musst du dir untereinander aufmalen und dann die rechten 5 Bits mit X-en füllen.
    Aus den X-en machst du das Bit 1 und aus den leeren Stellen das Bit 0.
    Dann diese 8 Byte so 'verpacken':
    const unsigned char Kasten[8] PROGMEM =
    {
    0b00011111,
    0b00010001,
    0b00010001,
    0b00010001,
    0b00010001,
    0b00010001,
    0b00010001,
    0b00011111 /* ACHTUNG. Hier kein Komma in letzter Zeile */
    };


    Und natürlich vor dem ersten nutzen der 'Bilder' muss du sie in den Speicher vom LCD eintragen.
    Das geht mit dem Befehl "lcd_setchar (NUMMER, Kasten);
    Für die NUMMER kannst du ein Zahl zwischen 0 und 7 angeben.

    Danach kannst du das 'Bild' mit dem Befehl "lcd_putc (NUMMER)" dann am LCD ausgeben.

    Fertig.
    Steht im übrigen im Buch ab Seite 79 im Kapitel "6.3.2. Ansteuerung eines Displays" weiter auf Seite 83 bei der Überschrift "Selbstdefinierte Sonderzeichen"

    Viel Erfolg
    Gruß Sternthaler
    Aktualisiert: 26.10.2012 um 00:13 von Sternthaler (Rechtschreibung)

Labornetzteil AliExpress