www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Grafikdisplay


Autor: Michael Früh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Ich habe vor ein 240x128 Pixel Grafikdisplay mit T6963C Controller
anzusteuern. Ich habe es nun schon einige Tage versucht, komme aber
nicht auf einen grünen Zweig. Die RAM-Addressen verteilung versteh ich
nicht ganz. Es zeigt einfach gar nichts an. Ich versuche das ganze mit
einem PIC in der Sprache C zu realisieren. Ich wäre extrem dankbar
falls jemand der schon mal was damit gemacht hat die Initialisation mit
einer kleinen Anzeige hier posten und erklären könnte. ich bin schon
zufrieden wenn einige Buchstaben angezeigt werden.
Vielen Danke für die Hilfe
Grüsse

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

das Display hat einen Ram-Speicher OnBoard. Diesen teilst du in der
Initialisierung in einen Text und Grafik Bereich (Area) ein. Wenn du
Text darstellen willst und den internen Charaktergenerator nutzen
willst, schreibst du in den Text Bereich. Grafik halt in den
Grafikbereich. Ist halt mal salop ausgedrückt. Ansonsten google mal
nach Steve Lawther. Da findest du ne recht gute Beschreibung. Hat mich
auch gehilft :-)

Mfg Sascha

Autor: mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi

hast du mal im forum gesucht bevor du gepostet hast ?!?
zu dem thema gabs schon einige threads und in einem ging es sogar darum
einen PIC16F84 an ein GLCD mit T6993 anzuschliessen
der in C (CCS-Compiler) erstellte sourcecode war ebenfalls dabei

such mal den thread und schau ob du damit weiterkommst

mfg
mike

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für euere Hilfe,
Hab mir dein Progi mal angeschaut mike. Ich versuch es momentan aber
erfolglos das ding auf meinem 16f877 laufen zu lassen. was muss ich da
genau ändern?
Grüsse

Autor: mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi

wie im thread beschrieben musst du nur die richtigen fuses für den PIC
wählen dann sollte alles klappen

mfg
mike

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Fuses stimmen.
Error[000] E:\LCD\GFX-LC~1.C 14 : Cannot open include file
"gfx-lcd_84.h"
Diese Meldung bekomm ich, komische Sache. weisst du noch weiter?
mfg

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm das hat sich jetzt erledigt. Du hast anscheinend einen anderen
compiler als ich da so ziemlich jeder befehl von dir bei mir n fehler
auslöst.
: Illegal # command "byte"
: Illegal # command "bit"
 Illegal # command "use"

etc.
grüsse

Autor: Michael (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab das ganze mal für meinen compiler umgeschrieben. Ich hängs mal
kurz an. Was hältst du davon? Kannst du als Profi Fehler festellen?
mfg

Autor: mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi

ich werd mir deinen sourcecode ansehen sobald ich zuhause bin
was für einen compiler verwendest du denn ?

mfg
mike

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also bin ein Stück weitergekommen. Es zeigt jetzt wenigstens Wirres zeug
an :). Nun würde ich gerne einen Buchstaben ausgeben und das wirre zeug
wegbringen. Die initialisierung sollte nun also gut sein.
Kannst du mir kurz erklären wie ich einen buchstabe ausgebe und alle
anderen pixel lösche?

Autor: mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die wirren zeichen sind ein gutes zeichen d.b. das glcd ist
initialisiert

hast du schon versucht meine clr_cld() routine zu verwenden um das
display zu löschen ?

mfg
mike

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jop, funktioniert leider nicht :(
Ich würde jetzt einfach gerne einen Buchstaben ausgeben. Weiss aber
nicht genau wie ich den Pointer setzen muss und wohin ich den
Buchstaben im RAM schreiben soll.
Tut mir leid wegen den Fragen aber ich weiss nicht mehr weiter.
mfg

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei der Initialisierung gibst du ja einen Bereich für den Text und für
den Grafikbereich an. Um einen Text anzuzeigen, sendest du die Adresse
in 2 Bytes zum Display und dann den Befehl 024H. Der setzt die Adresse
dann. Und beim Text anteigen nicht vergessen, das der
Charaktergenerator nicht ASCII kompatible ist. Vom ASCII-Zeichen mußt
du 020H subtrahieren, um das Zeichen korrekt angezeigt zu bekommen.

Mfg sascha

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, danke für euere Hilfe.
Nun kann ich problemlos Text ausgeben. Ich habe zuerst den TEXT RAM
bereich gelöscht und dann mit den gewünschten zeichen beschrieben. Nun
will ich aber Text anzeigen und gleichzeitig einzelne Pixel setzen. Was
muss ich da umstellen? Ich habe versucht den Grafik-RAM bereich zu
löschen und dann einzelne Pixel anzusteuern, kommt aber nur Mist
raus.Hab den Mode und den Display Mode auf AND gestellt und beides
anzeigen. Habt ihr irgendwelche Tips?
Grüsse

Autor: mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn du text mit grafik überlagern willst solltest du den displaymodus
auf OR setzten und nicht auf AND oder liege ich da falsch ?

mfg
mike

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.