Forum: Mikrocontroller und Digitale Elektronik EA DOG-M eigenes Zeichen erstellen


von Michael (Gast)


Lesenswert?

Hallo,

ich ein Problem mit der Generierung eines selbst-definierten Zeichens 
auf einem DOG162-Display.
Ich habe vor einiger Zeit schon einen Codeschnipsel dafür notiert (weiß 
aber nicht mehr woher):

void set_character_DOGM162 (uint8_t characterNumber, uint8_t data0, 
uint8_t data1, uint8_t data2, uint8_t data3, uint8_t data4, uint8_t 
data5, uint8_t data6, uint8_t data7)
{
  Disp_Command (0x38);
  Disp_Command (0x40+(characterNumber<<3));
  Disp_Command (data0); //Pixel die gesetzt werden sollen
  Disp_Command (data1);
  Disp_Command (data2);
  Disp_Command (data3);
  Disp_Command (data4);
  Disp_Command (data5);
  Disp_Command (data6);
  Disp_Command (data7);
  Disp_Command (0x39); // Instruction Set Tabelle 1
}

Leider ist auf der entsprechenden Speicheradresse das Zeichen nicht zu 
finden, es scheint so, dass der Speicher leer bleibt.

Was mache ich hier falsch ?

von Falk B. (falk)


Lesenswert?

@ Michael (Gast)

>Ich habe vor einiger Zeit schon einen Codeschnipsel dafür notiert (weiß
>aber nicht mehr woher):

>void set_character_DOGM162 (uint8_t characterNumber, uint8_t data0,
>uint8_t data1, uint8_t data2, uint8_t data3, uint8_t data4, uint8_t
>data5, uint8_t data6, uint8_t data7)

Für so eine Funktion müsste der Programmierer geschlagen werden! Schon 
mal was von einem Array gehört?

>{
>  Disp_Command (0x38);
>  Disp_Command (0x40+(characterNumber<<3));

Könnte stimmen.

>  Disp_Command (data0); //Pixel die gesetzt werden sollen

Nö, du willst hier DATEN senden, keine Commands. eher so.

   Disp_Data (data0);   //Zeichen definieren.

Wie man so eine Funktion SINNVOLL gestaltet, siehst du hier.

https://www.mikrocontroller.net/articles/Erweiterte_LCD-Ansteuerung

von Michael (Gast)


Lesenswert?

Alles klar, Danke für die Hilfe !

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.