Go Down

Topic: Pollin I2C --> LCD Bausatz stellt sich tot (Read 817 times) previous topic - next topic

nix_mehr_frei

Hallo,

ich habe mir den Pollin I2C --> LCD Bausatz mit dem PCF 8574 geholt und aufgebaut. Es tut sich nichts, lediglich der Kontrastregler reagiert.
Ich habe schon einiges durch.
Wie in diesem Link beschrieben http://hmario.home.xs4all.nl/arduino/LiquidCrystal_I2C/notes_for_pollin_interface.txt die LiquidCrystal_I2C.h gepatcht, eine neue Version der LiquidCrystal_I2C.h runtergeladen und die ebenfalls gepatcht, die neue IDE runtergeladen, ein anderes Dispay genommen (mit der parallelen Ansteuerung funktionieren sie), die Pullup R's von 10K auf 4,7K verringert, den hier verlinkten I2C Sniffer genommen - es wird kein Device gefunden!
Heute habe ich mal die Platine durchgeklingelt - keine kalten Lötstellen die Verbindungen passen alle http://www.afiata.com/wp-content/uploads/2010/04/LCD-Modules-using-PCF8574-8-bit-I2C.gif EN und RS sind vertauscht - das wurde aber durch das Patchen der LiquidCrystal_I2C.h korrigiert.
Blöderweise habe ich keine IC-Fassung verwendet (war ohnehin nicht Bestandteil des Bausatzes). Somit kann ich den Chip als solchen nicht auf dem Breadboard testen.
Ich habe mir jetzt aus der Bucht 3 PCF8574 geordert und beim freundlichen Chinesen ein fertiges Modul.
Hatte jemand ähnliche Probleme, oder funktioniert der Pollinbausatz bei anderen "plug and play"?  :D

Gruß Gerald
rot ist blau und Plus ist Minus

uwefed

Das ist reine Taktik. Er stellt sich tot damit Du ihn in Ruhe läßt.  ;) ;)

Der PCF8574 muß ohne Diplay erkannt werden. Mit dem I2C Scanner http://playground.arduino.cc/Main/I2cScanner mußt Du ihn finden. Falls Du ihn nicht findest ist das Problem in der Ansteuerung des PCF.

Welche Arduino hast Du und welche Pins des Arduino verwendest Du?

Grüße Uwe

nix_mehr_frei

genau den I2C Scanner habe ich dann auch genommen und der findet nix. Ich verwende einen Aruino Duemilanove mit dem 328'er ATMEL. Digital Out 4 & 5 - habe ich beim sniffen beide getauscht und auch andere Pins genommen - nado!  :smiley-yell:
Im Erik Bartmann "Die elektronische Welt mit Arduino entdecken" Ist sogar noch ein Fehler, wo Analog In 4 & 5 eingezeichnet ist, was mir spanisch vorkam  :smiley-eek:
Anfangs hatte ich Compilierungsfehler, weil IDE und Lib nicht zusammenpassten. Das habe ich behoben. Die einzigste Chance, die ich momentan sehe, ist auf die 3 PCF's aus der Bucht zu warten und dann zunächst auf dem Breadboard zu testen. Wenn der funzt, dann wird der auf die Platine verpflanzt  :D
Nur sollte so ein Chip nicht so einfach sterben. + & - habe ich nicht vertauscht, oder verkehrt herum eingesetzt habe ich ihn auch nicht. die +5V bkommt er vom Aruino. Viel mehr Möglichkeiten, einen Chip zu lynchen, gibt es nicht. IC's sind zähe  ]:D

Gruß Gerald
rot ist blau und Plus ist Minus

sth77


Im Erik Bartmann "Die elektronische Welt mit Arduino entdecken" Ist sogar noch ein Fehler, wo Analog In 4 & 5 eingezeichnet ist, was mir spanisch vorkam 

Die analogen Eingänge kannst du ebenso als Digitalpins verwenden, beim Duemilanove liegen die I2C-Pins tatsächlichlich auf A4 und A5. Kannst du unter anderem auch hier nachlesen.
Quote
I2C: analog input pins A4 (SDA) and A5 (SCL). Support I2C (TWI) communication using the Wire library.

Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

volvodani

Dein sog. Spanischer Fehler ist korrekt du hast dein Fehler bei Dig4+5.
Die I²C Schnitstelle ist physikalisch auf A4+A5 da dies so auf dem Atmega328 festgelegt ist. Die A0-A5 sind "genauso" Digitale Ein und Ausgänge wie D0-D13 nur das sie auch noch Analog In haben.
Also das aus dem Buch ist korrekt.
Quote

Wire Library

This library allows you to communicate with I2C / TWI devices. On the Arduino boards with the R3 layout (1.0 pinout), the SDA (data line) and SCL (clock line) are on the pin headers close to the AREF pin. The Arduino Due has two I2C / TWI interfaces SDA1 and SCL1 are near to the AREF pin and the additional one is on pins 20 and 21.

As a reference the table below shows where TWI pins are located on various Arduino boards.

Board   I2C / TWI pins
Uno, Ethernet   A4 (SDA), A5 (SCL)
Mega2560   20 (SDA), 21 (SCL)
Leonardo   2 (SDA), 3 (SCL)
Due   20 (SDA), 21 (SCL), SDA1, SCL1


Aus der Refrence Wire
http://arduino.cc/en/Reference/Wire

Gruß
Der Dani
So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

volvodani

So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

nix_mehr_frei

So, endlich funzt das Teil!  8)
Zum 1. hattet ihr mit den Analog Pins 4 & 5 Recht.
Zum 2. 4,7K parallel zu den 10K Pullups auf der Platine fror den Bus ein!  :smiley-yell: - nur mit 10k funzte es, dann fand der Sniffer den PCF auf Adresse 0x20
Zum 3. speichert die IDE 1.05 ihre Lib's in anderen Ordnern, als 1.03 (die lokal auch noch ist) bis ich die fand und die Struktur kapiert hatte, und die gapatche xxx.h am richtigen Ort lag, ging auch nochmal Zeit ins Land...  :smiley-roll-blue:
In der I2C-LCD ist der selbe lustige Bug, wie in der normalen LCD Lib. - für Zeile 3 & 4 muß man um auf Cursorposition 0 zu kommen, lcd.setCursor(-4, 3); für Zeile 3 eingeben...
Ergo: Murphy hatte Recht!
- neue Systeme machen neue Fehler!
- neue Systeme werden die alten Fehler wiederholen!  :P

Gruß Gerald
rot ist blau und Plus ist Minus

Go Up