Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: LCD am Max7311 Kategorie: Sonstige Hardware (von Heiko - 14.03.2004 8:55)
Als Antwort auf Re: LCD am Max7311 von André H. - 13.03.2004 12:31
Ich nutze:
C-Control II Unit, CC2-StarterBoard, OSOPT V3.0
Hallo André;
danke für die Hinweise.
Da werd ich wohl doch mit dem PCF Terminal arbeiten und pro Etage mit einem I²C-Multiplexer  
SUB Bus, um genügend PCF's ansteuern zu können. Das hätte sich wohl sowieso ergeben,
da in jedem Gerät noch ein DS1631 werkeln soll und bei dem ja auch nur max. 8 am Bus hängen können.
Wie verhält es sich eigentlich mit dem Interruptsignal, wenn ich über einen Multiplexer arbeite. Mu� ich dort etwas
beachten?

GruÃ? Heiko

> Hallo Heiko,
>
> > hat jemand schon ein StandardLCD an einem MAX7311 anstelle des PCF betrieben?
> > Ich würde gern neben dem LCD noch zusätzliche Tasten abfragen können (ähnlich, wie bei
> > Andre's I2C Terminal). Der Max7311 bietet halt die Möglichkeit neben den 16 Ports mehr
> > Bausteine an einem Bus zu betreiben (wichtig für Heizungs Einzelraumsteuerung, ohne Expander).
>
> Es macht nicht viel Sinn einen MAX7311 für die LCD-Ansteuerung zu benutzen.
> Es müssten dann ein vielfaches an Daten über den Bus übertragen werden, was
> die Ausgabe entsprechend langsamer macht.
> Als kleines Bsp.:
> Ein String mit 5 Zeichen benötigt bei einem LCD am PCF8574 mit pcflcd.c2
> 21Byte an Daten am Bus.
>
> Mit einem MAX7311 im 4-Bit Mode am MAX7311 wären das schon
> 60 Byte am Bus.
> Würde man das Display am MAX7311 im 8Bit-Mode betreiben (10 bzw. 11 Ports),
> so würde sich das Datenvolumen auf 35Byte reduzieren.
> Das wäre immernoch fast doppelt so viel, wie bei einem LCD am PCF8574.
>
> Darum habe ich auch noch nicht daran gedacht, ein LCD an einem anderem
> Portexpander, als dem PCF8574 anzuschlieÃ?en.
>
> > Andre,
> > an welchen Stellen des Moduls PCFLCD mü�ten �nderungen vorgenommen werden?
>
> Von Ã?nderungen kann man hier nicht sprechen.
> Es müsste ein komplett neues Modul geschrieben werden, da die Ansteuerung komplett
> unterschiedlich ist.
>
> Beim PCF8574 muÃ? man den Baustein nur am Anfang des LCD-Zugriffs einmal
> Adressieren. Danach werden die Daten als "Datenstrom" gesendet.
> Darum ist auch das Ausgeben von Strings beim PCFLCD am schnellsten.
> Beim MAX7311 mu� man hier den Baustein für jedes Byte/Integer neu Adressieren.
> D.h. bei einem LCD im 8Bit Mode 4mal Adressieren pro Zeichen/Kommando.
> Adressieren heiÃ?t beim MAX7311 jedoch 1xBus-Adresse + 1xRegisteradresse.
> Dazu kommt noch das Datenbyte. Macht also 4x3=12Byte pro Zeichen/Kommando.
>
> Selbst wenn Zeichenweise geschrieben werde würde, wären es beim PCF8574 5Byte.
> Also immernoch weniger als die Hälfte an Daten, als mit dem MAX7311.
>
> Wenn Du also wirklich einen MAX7311 für eine LCD ansteuerung benutzen willst,
> solltest Du dieses wenigstens im 8Bit-Mode betreiben.
> Der Ablauf wäre dann folgender (pro Zeichen/Kommando):
> - MAX7311 adressieren
> - Register für Port A setzen
> - Datenbyte senden
> - Konfigurationsbyte senden (hier nur 2 oder 3 Bit für RS, En(,R/W), mit En high)
> - I2C-Stop
> - MAX7311 adressieren
> - Register für Port B setzen
> - Konfigurationsbyte senden (hier nur 2 oder 3 Bit für RS, En(,R/W), mit En low)
> - I2C-Stop
>
> Also Vorlage kannst Du hier aber lcdext.c2 (Version vor 2.2)
> und srlcd.c2 benutzen.
> Diese Module haben mit dieser Art der Ansteurerung mehr gemeinsam.
> (srlcd.c2 wg. 8Bit-Mode)
>
> Die restlichen 6 bzw. 5 Ports des MAX7311 kannst Du dann frei verwenden.
> Wenn Du sie nur als Eingänge benutzt, mu�t Du beim ansteuern des LCDs
> nichts weiter beachten.
>
> MfG André H.
>


    Antwort schreiben


Antworten:

Re: LCD am Max7311 (von André H. - 15.03.2004 23:23)