Tag, in vielen Datenblättern von Displays steht eine Ini Sequent, die zuerst durchlaufen werden muss. Da fallen dann Begriffe wie Gamma Korrektur, Display Inversion usw. Kann mir jemand erklären was in so einer Display Initialisierung im Groben eigentlich passiert? Merci
Na das was im Datenblatt halt drin steht. Je nach Display ist da etwas anderes von nöten. Ich nehme an du sprichst von einem Grafik-Display mit Controller. Dann ist das ein Controller der für sehr viele unterschiedliche Displayarten bei unterschiedlichen Einsatzzwecken verwendet werden kann. In der Intitialisierung musst du ihm dann die Eigenschaften übermitteln. Bspw. die Auflösung, die Start/End-Adressen im GRAM, die Farbtabelle, die Farbtiefe, ob du das Display invertiert betreiben willst, die Helligkeit der Pixel/Hintergrundbeleuchtung, ... Im Datenblatt steht's drin was gemacht wird.
> Kann mir jemand erklären was in so einer Display Initialisierung im > Groben eigentlich passiert? Ähm... ja, das Datenblatt zu dem (von dir nicht näher spezifizierten) Displaycontroller. Wenigstens das DB solltest du haben - und wenn du uns dann sagst was aus dem DB du nicht verstehst können wir konkret drauf eingehen. Im Groben (wie von dir gefragt) ist es so, dass der Displaycontroller ja nicht weiss, welches Display angeschlossen ist. Also konfiguriert man in passend auf das Display bzgl. Anzahl Pixel, Wiederholrate, etc. Ist jetzt wirklich grob, aber zumindest ein Anfang. > Da fallen dann Begriffe wie Gamma Korrektur, Display Inversion usw. Gammakorrektur ist Anpassung der Helligkeit, Display Inversion ist die inverse Darstellung, also die Umkehrung der Farbwerte. Ralf
Danke das hilft mit schon mal als Anhaltspunkt. Wie kann ich mir die Funktionsweise eines Grafik-Displays mit Controller in etwa vorstellen? Es hat einen Speicher (DDRAM). An den Controller werden dann immer Befehle oder Daten geschickt bzw. Befehle (zum Beispiel) Anfangsadresse Zeile oder Anfangsadresse Spalte gefolgt von Daten (Beispiel Zeile 3). Dieser Speicher wird dann fortlaufend ausgelesen und auf das Display geschrieben? Es ist intern schon festgelegt wo welche Daten für welche Befehle abgelegt sind. Zum Beispiel an Speicherstelle xy liest der Controller die Funktion yz aus und schreibt die Daten aufs Display. Kommt das in etwa so hin? Merci für die Antworten
Ein Grafikdisplay wird in zwei Teile gegliedert: Das 'Glass' ist das Display was du siehst. Also das Glas mit den Flüssigkristallen und Transistoren. Ohne Intelligenz, Speicher, .... Das nackte Glas. Der Controller, dessen Aufgabe es ist ständig die Pixelinformationen aus einem Grafikspeicher (GDDRAM) ans Glass zu senden, auch wenn sich nichts im RAM geändert hat. Der Controller muss ständig und ununterbrochen senden. Was die Start/End-Adresse im GDDRAM ist, wieviel Zeilen und Spalten er senden muss, wie er die Daten senden muss, in welchem Intervall, etc. steht in der Initialisierungs-Routine. Andererseits muss der Inhalt des GDDRAM verändert werden können. Dazu hat der Controller ein paralleles oder serielles Interface über das ein uC Daten ins GDDRAM senden kann. Da über ein und dasselbe Interface der Controller konfiguriert wird und Daten im GDDRAM geändert werden, muss man vor jedem Senden dem Controller mitteilen ob die folgenden Daten Befehle oder Daten für den Speicher sind, wie du selbst schon beschrieben hast. Und dann hat so ein Controller manchmal noch integrierte Grafikroutinen die eine Pixelmanipulation beschleunigen. Bspw. verschieben bestimmter Bereiche, Löschen von Bereichen, Kopieren, ... Das sind aber Extras, die je nach Controller variieren und man vorerst ignorieren kann.
Hallo Frank, vielen Dank für deinen ausführlichen und verständlichen Beitrag. Genau sowas hab ich gesucht. Danke dafür
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.