mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik zwei Displays als ein Display ansteuern


Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kann ich zwei Displays als ein Display ansteuern? Also so, dass man 
nicht merkt dass es sich um zwei Displays handelt, die sich übereinander 
befinden?

Das Display wird jeweils über den RT1102 Controller angesteuert. Wie 
müsste ich das hardware-technisch realisieren?

Dann müsste ich doch zuerst die Daten für das untere Display über den 
Datenbus schicken und im Anschluss die für das obere Display? Die 
anderen Leitungen müssten alle doppelt ausgeführt werden (wie CS, RW 
etc.) oder?

oder ist es einfacher die daten nacheinander über das flachbandkabel 
(datenbus) und die daten in einel Latch vorhalten und dann gemeinsam auf 
beide Displays zu schicken?

Gerhard

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst alle Leitungen der Displays parallel schalten, nur /CS musst 
Du doppelt vorhalten. Die Display beschreibst Du nacheinander, mit der 
jeweiligen /CS-Leitung wählst Du aus, welches Du beschreibst.

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
aber ohne ein Latch dazwischen zu schalten? Die Displays hätten eine 
Auflösung von 240x64.

Autor: maddin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dafür ist ja die cs leitung, die latches befinden sich sozusagen im 
eingang des displays, damit sie eben nicht mehr extern benötigt 
werden....
m.

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn mein µC nicht soviele CS-Leitungen selbst aufweist, nimmt man dann 
einen 3-to-8 Decoder oder ein Gatter (z.B. NAND) um sich mehrere zu 
generieren?

Autor: maddin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich kenne zwar den display controller nicht, aber ich schätze du hast 
dort ca folgende leitungen:

CS R R/W R/S E A0-A7

wenn du jetzt 2 displays ansteuerst kommt doch nur ein pin hinzu....!?

wenn du jetzt 8 ansteuerst, dann könntest du diesen dekoder verwenden, 
wenn er mit dem freigabezustand der CS leitung des displays überein 
stimmt(low activ - high activ) dann hast du nur 4 pinne (0-2 plus evtl. 
E am decoder).

ich würde erstmal mit einem anfangen...

m.

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das andere hab ich schon verstanden.. aber ich brauch ja zwei 
CS-Leitungen für beide Displays und für einen RAM und Flash-Speicher der 
extern angeschlossen wird benötige ich auch jeweils ein CS - und der µC 
hat nicht soviele CS-Pins...

Autor: maddin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
am uc, solltes du jeden pin nehmen können, wäre mir neu wenn es dort 
cs-pins gibt, eventuell nur, wenn ein externer speicher vorgesehen ist, 
er also mit eingebunden wird, dann ist der cs pin aber speziell für die 
externe ram erweiterung, wenn du natürlich eine controller mit 
integriertem display treiber hast, könnte sich das ganze etwas anders 
gestalten...

solltest du das alles in software machen, und deine komponenten liegen 
alle am bus, dann sollte das ansprechen mit einem muxer doch möglich 
sein.... ist dann doch nur eine weitere komponente in deinem uc 
system... du kannst dann ja eh nur eine sache zur zeit ansprechen, also 
entweder ram, disp1, disp2 oder flasch...usw...

m.

Autor: Mathias B. (matthiasbuerkle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

der Beitrag ist zwar schon etwas älter, aber ich habe was ähnliches vor.

Ich will an einen Atmega32 zwei Displays anschließen. Das eine Display 
ist ein 4x40 Dispaly, auf dem verschiedene Betriebswerte einer Maschine 
angezeigt werden sollen. Dazu gehören z.B. die aktuelle Position, der 
momentane Strom, die Schaltzustände der Endschalter...

Zudem will ich ein zweites Display mit 4x20 Zeichen anschließen. Aus den 
bisherigen Beiträgen weis ich schon, dass man verschiedene Displays mit 
verschiedenen CS-Beschaltungen ansprechenen kann.

Nun will ich aber wissen, ob es damit eigentlich geht, zwei verschiedene 
Display anzusprechen(unterschiedliche Auflösung)!?.

Danke schon mal

Matthias

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Nun will ich aber wissen, ob es damit eigentlich geht, zwei verschiedene
>Display anzusprechen(unterschiedliche Auflösung)!?.

Natürlich geht das. Ist nur eine Frage der Software/Hardware.
Wobei dein 4x40 evtl. schon zwei Controller hat. Insgesamt
wären das dann drei Displays. Aber auch das geht.

Autor: Matthias Larisch (matze88)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst auch 46 verschiedene Displays ansteuern und 43 davon können 
auch 45284,43 * 32,xyf pixel darstellen ^^
Will sagen: Den Datenbus kannst du grundsätzlich sharen. Du musst nur 
dafür sorgen, dass eben die RICHTIGEN Daten anliegen, wenn dein Display 
die Daten übernimmt. Beim HD44780 ist das nunmal der EN Pin, bei anderen 
Displays ist das vielleicht ein CS Pin, bei Gerät XYZ kann das ein ABC 
Pin sein.

Das die richtigen Daten da sind ist deine Sache. Das machst du per 
Software.

Schwer wird es dabei jetzt z.B. fertige Displaylibraries zu verwenden, 
ich wüsst grad nicht, welche für mehrere verschiedene Displays da ist. 
Aber mal ehrlich, sone kleine Displaylibrary ist ja auch schnell 
geschrieben...

Matthias

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du must beim schreiben des kürzeren LCDs beachten das die zeilen kürzer 
sind

Autor: Mathias B. (matthiasbuerkle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@holger:
Deine Vermutung ist richtig. Ich hab bei dem 4x40 Display einmal einen 
Eingang E1 (Enable 1) für den ersten Treiber und einen E2 für den 
zweiten Treiber.

@Matthias:
Das mit dem Ansprechen der Displays stell ich mir nicht sehr kompliziert 
vor. Ich nimm eine Standart-Library und dupliziere sie. Dann passe ich 
sie für jedes Display an, damit jeder Befehl einem Display zugeordnet 
werden kann. Dann müsste das schon gehn.

Kann ein wenig dauern bis ich den Aufbau hab. Sobald ich weitere Infos 
darüber hab stelle ich sie hier natürlich ein.

Danke
Matthias

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.