STM32F0 -> I2C -> PCF8574 -> 20x4 LC-Display

OP #3741498
Lesenswert?

Hallo!

Ich suche jetzt schon seit Tagen einen Treiber oder Beispielcode mit dem 
man mit einem DicsoveryF0 über I2C ein 20x4 oder ein 16x2 Display 
ansteuern kann.

Gefunden habe ich Code für Arduino und STM32F1.

Ich benutze CooCox und die Treiber die ich da finde funktionieren alle 
nicht.
Das bedeutet Fehler beim Compilieren da die Helper Files nicht zu meinem 
Board pasen.


Ein Arduino Sketch mit super Beschreibung ist hier zu finden, ich habe 
das V1 in gelb.
http://arduino-info.wikispaces.com/LCD-Blue-I2C

Bleibt hier nichts anders übrig als den Treiber selber zu schreiben oder 
an das F0 anzupassen?

Alternativ kann ich natürlich den PCF8574 entfernen und das Display über 
GPIO mit 4Bit ansteuern.
OP #3748025
Lesenswert?

Hallo Stefan!

Ich bin mir da schon sicher, da ich bereits ein Display mit GPIO und 
einem HD4470 betreibe.
Kann mir kaum vorstellen, dass die Chinesen da einen anderen Controller 
eingebaut haben, Bzw. einen der nicht 3V kompatibel ist.

Wenn es wirklich nicht geht, kann ich ja einen ULN2003 oder ähnliches 
dazwischen schalten.

Kann es aber nicht testen, da ein Kumpel das Display unbedingt  haben 
wollte.
Werde mir aber noch eines bestellen da es knapp unter EUR 5.- inkl. 
Versand kostet.
#3748030
Lesenswert?

@ Gerald R. (visitor)

>Gefunden habe ich Code für Arduino und STM32F1.

>Ich benutze CooCox und die Treiber die ich da finde funktionieren alle
>nicht.
>Das bedeutet Fehler beim Compilieren da die Helper Files nicht zu meinem
>Board pasen.

Da die STM32 ja ein vielgeprieseneFamilie sind, deren Mitglieder alle 
SEHR ähnlich sind, um nicht zu sagen, das gleiche Module absolut 
identisch aufgebaut sind, sollte ein leichtes sein, einen Code vom F1 
auf F0 umzubauen.

Beitrag "I2CLCD Library für HD44780 LCDs"

Ist für AVR, man muss nur den untersten I2C Teil anpassen.
Gast #3749517
Lesenswert?

> Kann mir kaum vorstellen, dass die Chinesen da einen anderen
> Controller eingebaut haben, Bzw. einen der nicht 3V kompatibel ist.

Mir ist es schnmal passiert. Anstatt deswegen die Schaltung zu ändern, 
hatte ich jedoch einfach ein anderes Display gekauft (wieder auf gut 
Glück), und damit ging's dann.

> Wenn es wirklich nicht geht, kann ich ja einen ULN2003 oder ähnliches
> dazwischen schalten.

Das war doch ein Open-Kollektor Darlington Leistungstreiber, oder nicht? 
Ich würde sie nicht als Pegelwandler einsetzen. Dann eher einen aus der 
74LSxxx Serie (mit VCC=5V). Für deren Eingänge reichen 2V als High Pegel 
aus.
Gast #3751438
Lesenswert?

So, habe die Arduino-Bibliothek mal so hingebogen, dass sie jetzt mit 
dem STM32 läuft. (Olimexino STM-32)
Der Code ist mein Testprojekt, dementsprechend wenig ansehnlich und 
übersichtlich, aber ich denke die benötigten Funktionen findest du 
dadrin. :D

Der PCF8574 kann auch mit 3,3V betrieben werden. Mein Display zumindest 
auch.
Für die Kontrastspannung müsste ist dann noch eine Ladungspumpe nötig.
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren