Forum: Mikrocontroller und Digitale Elektronik i2c, lcd, mega32


von Jörg Z. (controller_jo)


Lesenswert?

Hallo,

trotz der ungefähr 1000 lcd-Beiträge habe ich wahrscheinlich eine neue 
Kombination, die noch keiner hatte.
An meinem Eval-Board von Pollin möchte ich über i2c ein LCD-Display im 
4bit-Modus betreiben.
Schaltung:
- SDA - PC0; SCL - PC1;
- als i2c-Slave hängt ein PCF8574 dran

Beim Pollin-i2c-Interface ist auch noch alles ein bischen verdreht 
(PCF8574-Port):
- P0 .. P3 Daten
- P4  RS
- P5  R/W
- P6  E.

Grundlage war ein C-File aus der Codesammlung.
- Wie kriege ich das initialisieren über I2C auf 4 bit hin?
- Der Mega32 (16Mhz-Takt) hat standardmäßig kein I2C-Interface. Muss ich 
bei der softwaremäßigen Umsetzung der I2C-Schnittstelle irgendetwas 
beachten?
Vielleicht hat ja doch schon jemand so eine ähnliche Konstellation mal 
gehabt.

Gruß Jo

: Verschoben durch Moderator
von Sebastian H. (sebihepp)


Lesenswert?

I2C und das ansteuern des Displays über 4-Bit sind zwei ganz 
verschiedene Dinge und nicht kompatibel. Wird das Display nun im 4-Bit 
Modus oder über I2C angesprochen?

von Jörg Z. (controller_jo)


Lesenswert?

Das I2C-Interface von Pollin wird über I2C angesteuert. Deswegen hatte 
ich mich im Forum nach I2C und LCD umgesehen. Dort wird meistens dann 
das LCD am I2C-Interface im 8-bit Modus betrieben. Bei dem 
Pollininterface wird es aber nur im 4bit-Modus betrieben.
Damit habe ich das erste Problem. Während beim "normalen" 8bit ein 
Datenbyte über I2C gesendet wird, muss ich das bei 4bit ja schon in zwei 
Schritten tun.
Prinzipiell muss es funktionieren, sonst würde Pollin das Ding 
sicherlich nicht anbieten. Aber ich muss zugeben, dass ich erst langsam 
wieder in die Atmelprogrammierung einsteige.

Mein Problem besteht nun darin, dass ich noch nicht weis, was nicht 
geht; I2C oder LCD-Display.

Das Modul:
http://www.pollin.de/shop/dt/NDU4OTgxOTk-/Bausaetze_Module/Bausaetze/LCD_I2C_Modul.html

von LCDmann (Gast)


Lesenswert?

PCF8574 ist ein Portexpander der mit i2c angesprochen wird,
du musst dir eben eine funktion überlegen die die Werte für die 
initialisierung schreibt und du musst dir noch überlegen wie du das mit 
enable hinbekommst, wo ist die Schwierigkeit an 4bit zu 8 bit? Maskieren 
oder Bitschieben ...
schau dir das Tutorial hier über lcds an .. wenn du das verstanden hast 
is das i2c mit Portexpander kein Problem! und weiters es ist keine 
Kombination die noch keiner hatte^^

von Jörg Z. (controller_jo)


Lesenswert?

Jetzt habe ich unter 8574 +lcd doch einige Beiträge gefunden. Doch auch 
da ist kein Projekt dabei, dass vollständig ist. Unter anderem ist dort 
die aussichtsreiche Bibliothek von Peter Fleury. Aber die dazugehörige 
i2c.h kann ich nirgends finden.
Hat vielleicht jemand das Projekt von Peter zum Laufen gebracht?

Gruß Jo

von Peter D. (peda)


Lesenswert?

Forum: Codesammlung

Wenn ihr eigene Programme oder Anleitungen geschrieben habt könnt ihr 
sie hier posten. Fragen werden gelöscht!

von Jörg Z. (controller_jo)


Lesenswert?

Kann ich denn den Beitrag in µc und Elektronik verschieben?

von Jörg Z. (controller_jo)


Lesenswert?

Hab das mit den Fragen in diesem Forum leider übersehen. Bitte löschen, 
die restlichen Fragen zu meinem Problem stelle ich im Forum µc und 
Elektronik.

Gruß Jo

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.