Forum: Mikrocontroller und Digitale Elektronik Idee zur Displayansteuerung


von Jonas G. (jonny)


Lesenswert?

Hallo,
diesmal geht es nicht wieder um eine einfache Frage zur Ansteurung von 
einem Display an sich.

Ich plane (für die Wintermonate) meinem Musik PC ein kleines Frontend zu 
spendieren.
Dieses soll ein G-LCD und Taster etc. beinhalten.

Ich plane ein 240x128 GLCD mit dem T6963C Controller.

Das Frontend wird per RS-232 an den PC angeschlossen und kann so mit der 
Software kommunizieren.

Meine Frage an euch:
Soll ich den Displayinhalt immer neu per PC an den MC senden, der dann 
das Display ansteuert oder sollte ich die Hauptanzeigen im MC 
abspeichern und der PC sendet nurnoch den Inhalt für festgelegte 
Bereiche.

Ich bin mir nämlich nicht sicher ob das alles schnell genug geht wenn 
ich zB. eine ProgressBar realisieren will und den Displayinhalt jede 
Sekunde neu sende.

Ich meine von der Übertragungsgeschwindigkeit vom UART sollte es klappen 
aber wie sieht es mit der Verarbeitung im MC usw. aus?

Was meint ihr?

Danke,
Jonas

von Sven P. (Gast)


Lesenswert?

Lager so viel wie nur irgend möglich (aber dennoch auch sinnvoll!) in 
den Mikroprozessor aus -- alles, was da drinne steckt und korrekt 
arbeitet, ist danach idiotensicher verstaut.

von Jonas G. (jonny)


Lesenswert?

Das habe ich mir auch gedacht, doch wenn ich den MC nur dazu benutze 
eine Verbindung zwischen RS232(PC) und Display herzustellen, dann kann 
ich die Anzeigen schnell in meiner Software ändern.

Sonst müsste ich immer den Inhalt im Flash vom MC ändern.

Oder ich füge eine Funktion hinzu die einmal angelegten "Vorlagen" zu 
ändern... wäre auch ein Idee.

Sozusagen bestimmte Elemente definieren, die per Software an den MC 
gesendet werden und die dann auf einer vorher ausgewählten 
Display-Vorlage angezeigt werden.

von Sven P. (Gast)


Lesenswert?

Jonas G. wrote:
> Das habe ich mir auch gedacht, doch wenn ich den MC nur dazu benutze
> eine Verbindung zwischen RS232(PC) und Display herzustellen, dann kann
> ich die Anzeigen schnell in meiner Software ändern.
Tjo, entscheide du, wie oft sich sowas ändern wird.


> Sonst müsste ich immer den Inhalt im Flash vom MC ändern.

> Oder ich füge eine Funktion hinzu die einmal angelegten "Vorlagen" zu
> ändern... wäre auch ein Idee.
Kannste machen, so in etwa ein NCURSES (->google) für AVR und Display; 
das wäre dann auch sinnvoll weiterverwertbar (Kategorie:Wettbewerb ^_^)

> Sozusagen bestimmte Elemente definieren, die per Software an den MC
> gesendet werden und die dann auf einer vorher ausgewählten
> Display-Vorlage angezeigt werden.

von Jonas G. (jonny)


Lesenswert?

>> Kannste machen, so in etwa ein NCURSES (->google) für AVR und Display;
>> das wäre dann auch sinnvoll weiterverwertbar (Kategorie:Wettbewerb ^_^)

Das würde mich (natürlich in wesentlich abgespeckter Weise) sogar 
ansprechen
Die frage ist ob man bereit ist die Zeit zur Implementierung und 
Dokumentation aufzubringen. ;)
Muss ich mir mal duch den Kopf gehen lassen.
Wäre zumindestens eine gute Arbeit, die man immer verwenden kann.

Man muss natürlich überlegen was sich zu implementieren lohnt und was 
nicht.

von Chris D. (m8nix)


Lesenswert?

Wäre sicher ein schönes Projekt Jonas.

Ich hab bei der Arbeit mit Matrixdiplays nur immer festgestellt das man 
dazu neigt mehr am Aussehen zu feilen als einem lieb ist. Und dann hat 
man ständig mit zwei verschiedenen Systemen zu hantieren.

Ich würd heut so weit wie möglich alles vom PC übertragen. Dann ist das 
ganze auch leichter auf ein anderes System übertragbar. Du musst ja 
nicht ständig das neue Bild komplett übertragen. Es gibt ja schliesslich 
Befehle zum Setzen/Löschen/Invertieren von Dots. Ausserdem musst eine 
Progressbar sowieso immer mit neuen Daten füttern.

Reicht schon wenn man Sonderzeichen in den Zeichensatz implementieren 
muss.

Gruss Chris

von Ralf (Gast)


Lesenswert?

Hi,

warum dann über RS232, wenn alles ständig neu gesendet wird? Aus 
Performance-Gründen für eine noch schnellere Anzeige könntest du einen 
FT232R nehmen, dann hast du einen USB-Anschluss. Der Vorteil wäre, dass 
du dann noch schneller die Daten übertragen kannst. Für die Ansteuerung 
gibt es eine DLL von FTDI.

Ralf

von Jonas G. (jonny)


Lesenswert?

> Der Vorteil wäre, dass
> du dann noch schneller die Daten übertragen kannst. Für die Ansteuerung
> gibt es eine DLL von FTDI.

Mhhh... mit einer DLL kann ich nicht wirklich viel anfangen, da auf dem 
Musik PC ein kleines Linux läuft.

Gibt es von FTDI auch etwas für Linux?

Jonas

von Niels H. (monarch35)


Lesenswert?

240x128 sind 30720 pixels. Wenn man diese geschickt auf 8Bit verteilt, 
braucht man für eine vollständige Befüllung des Displays 3840Bytes. Bei 
einer Übertragsrate von 57600Baud bräuchte man also knapp 700ms für das 
komplette Display.

Ich würde mir ein Protokoll ausdenken, wobei ich ein volles aktuelles 
Bild im Speicher des PCs vorhalte, sowie einem Buffer, der beschreibt, 
wie das Bild aussehen soll und daraufhin jeweils nur die Unterschiede 
zum Display übertrage.

Dem Displayteil würde ich ausser dieser Differenz-interpretationslogik 
keine weitere Intelligenz zusprechen.

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.