mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik I2C zu parallel Konverter für HD44780 LCDs


Autor: Klaus2m5 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

mir war etwas langweilig über Weihnachten und deshalb habe ich ein
neues persönliches Projekt gestartet. Es handelt sich um einen Ersatz
für den betagten PCF8574 um das Ansteuern von HD44780 kompatiblen LCDs
über den I2C Bus einfacher zu machen.

Den geplanten Funktionsumfang habe ich schon mal in einem kleinen
Dokument zusammengefasst, zu finden unter http://2m5.de/i2c in
englischer Sprache.

Gruß, Klaus

Autor: Marco S (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So etwas hatte ich auch schon mal vor. Aber dann kam ich auf die Idee,
einen ATtiny als LCD-Kontroller zu verwenden. Preislich dürfte sich das
nicht viel schenken. Der Tiny sollte dann I2C-Befehle annehmen und das
LCD-Timing übernehmen. Wenn die Timing-Geschichte im Tiny untergebracht
ist, so spart das evtl. Speicherplatz im "main"-uC. Nachteilig ist,
dass der LCD-AVR erst programmiert werden muss, wohingegen der PCF
schon nach dem verlöten einsatzbereit ist.

Gruß
Marco
-

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du bist nicht der erste, und preislich ist der schwer zu schlagen:
http://www.channaa.com/html/i2c_lcd_adapter.html

Autor: Klaus2m5 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke für den link A.K. Stimmt, gutes Preis-leistungsverhältnis für
eine Fertiglösung. Meine Idee war mehr eine Anleitung zum Selbstbau und
basiert tatsächlich auf dem Attiny2313.

Kosten wirds am Ende die 1,65€ für den Attiny2313 (Reichelt) und den
Zeitaufwand zum Flashen. Sourcecode und Binary werden als Freeware zur
Verfügung gestellt.

Gruß, Klaus

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch billiger gehts mit einem 74HC164:

http://www.mikrocontroller.net/forum/read-4-22246.html#new


Braucht nur einen Draht zusätzlich, wenn das SPI schon für andere
Sachen benutzt wird.


Peter

Autor: Sebastian Heyn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jedes gewöhnliche schieberegister kannst du da nehmen...

Autor: Dirk Bxxxxx (dirk-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

gab es auch mal von der Elektor zum 24 Bit AD Wandler (8051 µC)

Gruß,
Dirk

Autor: Jadeclaw Dinosaur (jadeclaw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter Dannegger: Ein HC164 hat natürlich auch Nachteile.
1.) Kein dimmbares Backlight ohne extra Aufwand im Hauptprozi.
2.) Die ganze Displaysteuerung verbleibt im Hauptprozessor, so hat man
ausser ein paar Portpins nichts gewonnen.
3.) Bei HD44780-Displays weniger tragisch, bei anderen Controllern ein
echtes Problem: Daten gehen nur in eine Richtung.
Beim T6963 muss der Status vor jedem Schreibvorgang abgefragt werden,
(O-Ton Datenblatt) - ergo braucht man Lesezugriff aufs Display.
Es macht schon Sinn, das alles in einen Extra-Controller auszulagern.

Gruss
Jadeclaw.

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Jadeclaw,

der 74HC164 soll ja nur einfach, preiswert und Leitungen sparend sein.


"1.) Kein dimmbares Backlight ohne extra Aufwand im Hauptprozi."

Ich kenne keinen, der ein Backlight dimmt, wozu also den Aufwand
treiben ?

Bzw. nen Draht von der PWM und ein RC-Glied dahinter ist doch kein
Aufwand.


"2.) Die ganze Displaysteuerung verbleibt im Hauptprozessor"

Ob Du nun den ASCII-Code erstmal an einen 2.MC schickst oder direkt ans
LCD ist ja überhaupt kein Unterschied !

Für ein 2*20 LCD ist die CPU-Last bestenfalls 1%, das merkt man doch
gar nicht.

Und wenn man das Hardware-SPI nimmt und ne langsame Bitrate einstellt,
hat man damit gleich die 44µs Wartezeit erschlagen.


Peter

Autor: Klaus2m5 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter,

ich würde auch kein I2C für ne LCD Ansteuerung nutzen    ...wenn ich
nicht sowieso schon I2C für andere Dinge einsetzen würde.

Dann werden nämlich keine weiteren Pins gebraucht, keine zusätzlichen
Routinen zum shiften und clocken der Daten, nur mehr I2C Adressen.

In allen anderen Fällen und wenns nur ums Pins sparen geht machts auch
ein Schieberegister.

Gruß, Klaus

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch einfacher mit einem 74LS174: http://www.myke.com/lcd.htm (ziemlich
weit unten)
Allerdings kein i2c ;-)

Autor: Steffen@HSF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

was ist los mit diesem Forum? Gibt es eigentlich schon Fortschritte???
Wie siehts aus Klaus2m5 mit deiner Routiene für den ATtiny2313?

Und noch ne Frage: Hat der ATtiny2313 überhaupt einen Hardware TWI?
Oder wolltest du das alles per software lösen?

Gruss Steffen@HSF

Autor: KLaus2m5 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Steffen,

wegen des negativen Feedbacks in diesem Thread ist das Projekt in
meiner Prioritätsliste ganz nach unten geraten. Mittlerweile habe ich
es ganz verworfen.

Zu Deiner Frage - ja, der ATtiny2313 unterstützt ein Hardware TWI auch
als Slave, so dass die Implementierung nicht allzu schwierig gewesen
wäre.

Gruß, Klaus

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also,
unsere Displays betreiben wir jetzt seit über 1 Jahr an einem einfachen
I2C-Bus mit einem PIC (zzgl. Taster, PWM für das Backlight).

Funzt prima, aber I2C ist nicht sehr störfest für lange Kabel, wie wir
jetzt gemerkt haben.

Ach ja, bidirektionale Kommunikation und ... propitäres Protokoll !

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.