Re: Adressierung Max7311 Relais Platine 8+(8) Kategorie: Programmierung (von Werner - 1.07.2004 14:08) | ||
Als Antwort auf Re: Adressierung Max7311 Relais Platine 8+(8) von André H. - 30.06.2004 9:16 | ||
| ||
> Hallo Werner, > > > Hallo Herr Helbig, > > Hier im Forum gilt das "Du". Ich mag's normal nicht so förmlich. ;-) > Darum bleib ich dabei. > > > Das erste Erfolgserlebnis ist eingetreten. Die Relais haben angezogen. > > Leider folgt für mich schon das nächste Problem. > > Es ziehen alle Relais an. Ich kann die einzelnen Relais nicht steuern: > > max7311.setDDRw(0,0x0000); > > max7311.set(0,0,1); > > wahr mein versuch und ich hoffte das das erste Relais anzieht. > > Ich habe es auch mit > > max7311.setw(0,0x0001); > > versucht es ziehen immer wieder alle Rel an. > > Das Ausgangsregister des MAX7311 steht nach einem Reset (anlegen der Spannung) > immer auf High, soda� alle Ausgänge nach Setzen der Richtung auf Ausgang ersteinmal > einen High-Pegel besitzen. > Beheben lässt sich dies durch ein Low-Setzen aller Ausgangsregister, bevor man diese als > Ausgang definiert. > Allerdings sollte das Schaltern mit setw() immer funktionieren. > Ich habe das testhalber einmal ausprobiert und es funzte ohne Probleme: > > thread main > {byte i; > max7311.setw(0,0x0000); > max7311.setDDRw(0,0x0000); > max7311.set(0,1,1);// Ausgang 1 Einschalten > for i=0 ... 9 > {// Ausgang 0 blinken lassen(geht auch mit toggle()) > max7311.set(0,0,1); > sleep 500; > max7311.set(0,0,0); > sleep 500; > } > quit 1; > } > > > > Bezüglich der Invertierung, habe ich gelesen das die Relais bei einem reset bzw. nach einem > > Stromausfall unkontrolliert schalten. Möglich das ich das jetzt mit den Schieberegistern verwechsel? > > Hier hast Du zwei Dinge verwechselt. > Das unkontrollierte Schalten betrifft Schieberegister, wenn die Ports, welche dieses steuern > (noch) nicht als Ausgang definiert sind und Pull-Widerstände fehlen. > Das Invertieren ist für den PCF8574 notwenig, da dieser Baustein semibidirektionale Ports besitzt. > D.h. es gibt nur zwei Pegel: Low und Eingang(=High). > Da der Baustein eine 100µA Konst.Stromquelle als Pull-Up besitzt, schalten Relais nach > einem Power-On ein, wenn man keine Inverter zwischenschaltet. > > MfG André H. Hallo André Danke für Dein Demo Programm, jetzt funzt es auch bei mir :-) Es wird halt noch ein weil brauchen, bis ich ohne hilfe Programme schreiben kann. mfg Werner | ||
Antwort schreiben Antworten: |