Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Kann PCF8574 schreiben aber nicht lesen? Kategorie: C-Control I V1.2/2.0 (von LZ129 - 26.09.2006 20:23)
 Als Antwort auf Re: Kann PCF8574 schreiben aber nicht lesen? von Alex - 26.09.2006 14:29
> > Hallo,
> > Ich habe 6Stk. PFC8574T an Port9 und Port10 angeschlossen und nutze die erweiterten BytePorts im Quellcode. 3Stk PCF8574 sind getriebene Ausgänge mit ULN2803 und funktionieren.
> > Die anderen 3 PCF8574 sollten Eingänge sein. Ich lese aber immer nur eine 0 ein, egal welcher Pegel anliegt. Da ich alle 6Stk PCF8574 beschreiben aber nicht lesen kann muß die Adressierung und die Schaltung in Ordnung sein. Ich habe auch schon auf erweiterten BytePorts verzichtet und eine I2C Implementation in BASIC benutzt. Das Ergebnis ist immer das gleiche: Schreiben ja lesen nein! Ich habe auch schon sämtliche Anschlußwarianten mit und ohne Pull-Up, Pull-Down ausprobiert.
> > Hatte jemand schon mal das Problem? Wie löst man es?
> > Danke für Eure Hilfe.
> > Gruß Stefan
>
> Hallo!
>
> Der PCF hat kein Datenrichtungsregister, d.h. du musst die Ports im Programm auf High schalten und dann kannst du sie nach unten ziehen.
> Umgekehrt gehts leider nicht, hatte das selbe Problem.
>
> Grüße,
> Alex

So einfach ist es offenbar nicht. Ich hatte vergessen zu erwähnen, daß ich genau das entsprechende Beispiel aus der Basic Workbanch++ geladen habe.
Wenn ich ein beliebiges Byte auf irgend einen PCF schreibe, kann ich die entsprechenden Pegel am Ausgang messen. Lese ich diesen PCF danach aus, kommt eine 0 zurück. Übrigens die Ports am PCF sind unbeschaltet. Es ist zum verzweifeln. Sowas ist mir noch nie passiert.


Folgendes Programm:

define SDA Port[9]
define SCL Port[10]
define InPort1 byteport[6]' PCF8574 (keinTypA) auf Adresse 3 A0=1; A1=1; A2=0)
define test byte[1]

SDA=on
SCL=on
InPort1 = 255


Test=InPort1
print Test

'Es sollte doch eigentlich eine 255 zurückkommen?
'Es kommt aber eine 0.

InPort1=128
Test=InPort1
print Test

'Es sollte doch eigentlich eine 128 zurückkommen?
'Es kommt aber wieder eine 0.

Kann es sein, daß sich 6Stk I2C Chips in einem Bus nicht vertragen? (Kann eigentlich nicht sein, da ich alle PCF beschreiben kann.) Ich setze PCF8574T ein, also im SMD-Gehäuse. Sind die vielleicht zu schnell oder zu langsam? Einer der PCF ist im DIL18-Gehäuse und TypA aber auch wenn ich den herrausnehme ändert sich am verhalten nichts.

Passender Link: CNC&Modellbau

 Antwort schreiben

Bisherige Antworten:

Re: Kann PCF8574 schreiben aber immer noch nicht lesen? (von LZ129 - 27.09.2006 10:05)
    Re: Kann PCF8574 schreiben aber immer noch nicht lesen? (von Axel - 2.10.2006 17:18)
        Re: Kann PCF8574 schreiben aber immer noch nicht lesen? (von LZ129 - 7.10.2006 12:37)