www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD (4bit-mode) am PCF8574


Autor: KoF (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hmm, ok, ich dorktore gerade rum!

aber es scheint nicht zu funktionieren :-(
so habe ich das verbunden (power(vcc/gnd)und kontrast sind auch
angeschlossen)

LCD     PCF8574
---------------
RS      P5
R/W     P6
E       P7
D4      P0
D5      P1
D6      P2
D7      P4


könnt ihr mir sagen, wo mein fehler liegt?

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
k/a schau hier im AVR TUT mal nach LCD DIsplay sollte weiterhelfen und
das ASM File LCD_ROUTINES sollte auch helfen ;)

Autor: KoF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja, einfach an den uc funzt ja auch!
ich wollte das ding ja jetzt über den pcf8574 an i2c hängen!

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du es denn erstmal ohne LCD getestet, also ob du Ausgangspegel am
Schaltkreis nach belieben setzen kannst und auch Eingänge korrekt
abfragen kannst?

Autor: KoF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja, ich kann lesen und schreibend auf den pcf8574 zugreifen, wenn du das
meinst.

Autor: KoF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, initialisierung funktioniert jetzt(zumindest mal etwas)!
also disp anschließen -> ein schwarze balken sind in zeile 1 & 3
sichtbar. zeile 2 & 4 sind nicht mit balken versehen.

initialisierung -> dislplay löscht die schwarzen balken und alle zeilen
sind leer.

kann ich das als "funktionieren" im sinne einer initialisierung
werten??

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Würde ich schon sagen, also freu dich :-)

Autor: KoF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich dreh noch durch!!!
die initialisierung war falsch :-(

wie wird so ein vermalledeites display im 4 bit mode initialisiert?

Autor: Jens123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://www.repairfaq.org/filipg/LINK/F_Tech_LCD2.h...
ich denk du hattest am direkt am µC am laufen????

Autor: Gunter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: KoF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hmp :-(
ok, ich habe nochmal versucht, das display im 8 bit modus anzusteuern
:-( ich habe nur ein komisches verhalten gemerkt!!!

SOLL : 4  D  d  t  $
MACHT: <  L  `  |  ,

usw...
ich raf einfach nicht, warum es mir einige (nicht alle) zeichen einfach
zahlen abändert!!!

Autor: KoF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, erst prüfen!!!!
ich habe den datenport des disp mal eben an einen anderen port des
uc's gehäng! jetzt geht es!!! mir scheint, als sei der uc so langsam
irgendwie "komisch drauf".
nach 3 monaten und zig flashvorgängen am tag sollte ich ihn eventuell
mal tauschen.

Autor: Jens123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du sendest die daten per uart?

Autor: Markus_8051 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du schreibst, das LCD hängt wie folgt an dem PCF:

LCD     PCF-Pin
D4      P0
D5      P1
D6      P2
D7      P4

Ich unterstelle mal, daß die P4 ein Schreibfehler ist und P3 heißen
sollte. Trotzdem schiebst Du in LCDOutc das lower Nibble um 4 bit nach
oben. Dabei ist es doch schon dort, wo es hingehört. Das Upper Nibble
mußt du nach unten schieben!

Bei den defines am Anfang hast Du für RS E RW die Bitnummer und nicht
die Wertigkeiten angegeben. Richtig wäre:
E 128 ; oder 1<<7
RW 64 ; oder 1<<6
RS 32 ; oder 1<<5

Zum Setzen und Löschen von Bits in einem Byte solltest Du mit den AND
und OR Operatoren arbeiten und nicht mit + und -! Sonst bekommst Du ein
Problem, falls die bits aus irgendwelchen Gründen vorher schon gesetzt
waren...

z.B.:

byte = byte & E;

byte = byte | (255-E);

Was war mit meinem Code? Lief der nicht?

CU

Markus_8051

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.