Gast
#1806437
Hallo zusammen... Ich hoffe Ihr könnt mir helfen - ich verzweifle... Habe schon unzählige Beiträge im Forum durchsucht und auch schon im mikrocontroller.net Chat mehrfach nachgefragt - leider bisher ohne Erfolg... Mein Display an sich (C216x05xxW00) wird wunderbar initialisiert und arbeitet soweit fehlerfrei. Ich habe mir alles zusammen mit dem AVR-GCC-Tut erarbeitet und auch diese lcd-routine.c und lcd-routine.h verwendet. Das Problem, um das es sich handelt ist - wie der Betreff schon sagt - das generieren eigener Zeichen... Ich habe mal eine Art Codesammlung angehängt, da sind Auszüge aus meiner lcd-routines.c, lcd-routines.h und meiner main-Fkt. (alles nachzulesen unter http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung). Was ich daran nun einfach nicht verstehe ist, dass zum 1. in der *.h steht ich soll data als ein Array[5] schreiben, d.h. also das Array data besteht aus 5 Einträgen richtig ? aber Benutzerdefinierte Zeichen werden doch Zeilen weise übertragen und noch dazu wundert mich, dass in der routines.c innerhalb der for Schleife das i von 1 bis 8 läuft und somit 8 einträge des Arrays "data" übermittelt werden. Ok, vllt war das nur ein kleiner schreibfehler - vllt müsste in der *.h einfach nur "Array[8]" stehen, aber egal - in meinem Code aus der Main habe ich ja auch 8 Zeilen übergeben... Aber am wenigsten kann ich mit der Startadresse anfangen... ?! Ich habe hier auch mal den Link zu meinem Datasheet - das ist nur ein paar Seiten lang und ich denke Seite 13 und 15 sind die "wichtigsten" obwohl sie denke ich nichtssagend sind... http://www.cct.com.my/Products/Character_Module/C216x05xxW00_REV1.pdf Könnte mir bitte jemand Helfen dieses Problem zu lösen ? Es würde mich schon stark weiterhelfen, wenn mir jemand helfen würde die nötigen Infos aus dem Datenblatt zu ziehen... Was glaubt ihr ist an meinem Code falsch ? Die Startadresse des CGRAM ist 0x40 und da ich in der lcd_generatechar() die 0 als "code" übergeben habe müsste das Zeichen doch demzufolge auf der Position 40 zu finden sein ?? aber das Display bleibt vollkommen leer. Es tut sich nichts - nicht mal ein falsches Zeichen :( Mache ich einen Fehler beim Ausgabe-Syntax ? Danke schonmal vorab an alle nach diesem Roman ;)