Hallo, ich beobachte ungewollte und undefinierte Einschaltungen an PCF8574's durch Spannungsimpule im Hausnetz(typisch bei Leuchtstoffröhren und Trafos). Wäre es sinnvoll, SCL durch den Master permanent auf LOW zu halten und nur bei gewollten Schaltungen den Bus kurz zuvor in den definierten Zustand SCL und SDA auf HIGH zu setzen ? Würde das helfen, um den Bus (die PCFs) vor undefinierten Einschaltungen zu "verriegeln" ? Gruß
Naja, Tiefpassfiltern und mit langsamen Datenraten arbeiten. I2C war nie für die Hausinstallation gedacht, das ist dafür nicht geeignet. Aber probiers mit Tiefpassen und möglichst kleinen Abschlusswiederständen. Vielleicht kannst Du so was retten.
Hallo, wie Christian bereits geschrieben würden TP helfen. Eventuell hilft dir ein Bustreiber wie der PCA9507 von NXP. Ebenfalls kann ich dir diesen Artikel empfehlen: http://www.mikrocontroller.net/articles/I2C_als_Hausbus hoffe ich konnte dir helfen mfg Alexander
Die Störungen erzeugen zufällig exakt die Adresse des PCF8574? Kommt mir etwas komisch vor. Fehlen vielleicht einfach nur Superessor Dioden an VCC, SDA und SCL?
Hendrik L. schrieb: > ich beobachte ungewollte und undefinierte Einschaltungen an PCF8574's > durch Spannungsimpule im Hausnetz(typisch bei Leuchtstoffröhren und > Trafos). Es wäre sinnvoll, wenn du erstmal beschreibst, welche Schutzmaßnahmen du für deine Schaltung vonommen hast, sonst wird dieses Rätselraten einfach weiter gehen und dich keinen Schritt weiter bringen.
>ich beobachte ungewollte und undefinierte Einschaltungen an PCF8574's >durch Spannungsimpule im Hausnetz(typisch bei Leuchtstoffröhren und >Trafos). Wie Jörg geschrieben hat, ist es sehr unwahrscheinlich. Hast du die Impulse mit einem Oszi gemessen oder gehst du nur davon aus? >Wäre es sinnvoll, SCL durch den Master permanent auf LOW zu halten und >nur bei gewollten Schaltungen den Bus kurz zuvor in den definierten >Zustand SCL und SDA auf HIGH zu setzen ? Wäre nicht sinnvoll Sinnvoller wäre: - Kerkos rein bzw. für stabile Versorgung der Schaltung sorgen. - evtl. Ferrite Bead - Ich hoffe du hast Pull-Ups an deinem I2C Bus
>Es wäre sinnvoll, wenn du erstmal beschreibst, welche Schutzmaßnahmen du >für deine Schaltung vonommen hast, sonst wird dieses Rätselraten einfach >weiter gehen und dich keinen Schritt weiter bringen. Genau, vielleicht ist es nur deine Software die murks ist ;)
♪Geist schrieb: > Sinnvoller wäre: > - Kerkos rein bzw. für stabile Versorgung der Schaltung sorgen. > - evtl. Ferrite Bead Strokos können auch helfen. Filter- und Entstörmaßnahmen müssen an allen von der Schaltung abgehenden Leitungen istalliert werden.
♪Geist schrieb: .. > Wie Jörg geschrieben hat, ist es sehr unwahrscheinlich. Hast du die > Impulse mit einem Oszi gemessen oder gehst du nur davon aus? > > Ich brauche die Impulse mit einem Oszilloskop gar nicht zu messen: Ich schalte eine Leuchtstofflampe ein ... und in dem geleichen Moment, in dem es blitzt, schalten die PCF's ihre Ausgänge durch (alle acht PortPins). (Ich habe allerdings ein Oszilloskop am I2C Bus - ich kann also zudem sehen, wie die Impulse das Gleichspannungssignal (Ruhe=HIGH) auf SCL und SDA zerschiessen) Darum habe ich mir überlegt, was wäre denn, wenn SCL permanent auf LOW liegt - das wäre doch eine Art Verriegelung ? > > Sinnvoller wäre: > - Kerkos rein bzw. für stabile Versorgung der Schaltung sorgen. > - evtl. Ferrite Bead > - Ich hoffe du hast Pull-Ups an deinem I2C Bus PullUps (1,8 KOhm) habe ich am Bus. Vorschriftsmässig - wie im Lehrbuch! Gruß
> wie die Impulse das Gleichspannungssignal (Ruhe=HIGH) auf SCL und >SDA zerschiessen) Die Ausdrucksweise ist zwar salopp, aber hilft nicht weiter das Problem einzukreisen. Bist Du sicher, daß Deine Software nicht durch die Leuchtstoffröhre getriggert wird? Schon mal den Prozessor abgehängt?
Hendrik L. schrieb: > Ich brauche die Impulse mit einem Oszilloskop gar nicht zu messen: Wer viel misst misst Mist, in diesem Fall > > Ich schalte eine Leuchtstofflampe ein ... und in dem geleichen Moment, > in dem es blitzt, schalten die PCF's ihre Ausgänge durch (alle acht > PortPins). kannst du wohl ohne Messung wissen ob's der I2C Bus ist? Einfach auf Masse legen. > Wäre es sinnvoll, SCL durch den Master permanent auf LOW zu halten Da die Störung wohl kaum über das Protokoll erfolgt (extrem unwahrscheinlich das die Lampe das jedes mal hinbekommt) wird Sie direkt ins IC einstrahlen. Die böse Lampe missbraucht den Bus dann als Antenne ;-). Schirmung der Leitungen ist etwas langweilig weil Standard, den Bus niederohmig machen (auch und gerade die Leitungen untereinander) die spannendere Variante.
Bus liegt auf meinem Labortisch (mit RASPERRY Pi und PCF8574 auf Boards angeschlossen). Buslänge zwischen 20 und 30 cm - aufaddiert! Direkt darüber die Leuchtstoffröhre (1 Meter Abstand)!
Hendrik L. schrieb: > Bus liegt auf meinem Labortisch (mit RASPERRY Pi und PCF8574 auf Boards > angeschlossen). ungeschützt > > Buslänge zwischen 20 und 30 cm - aufaddiert! egal, kommt auf die wirksame Antennenlänge an > > Direkt darüber die Leuchtstoffröhre (1 Meter Abstand)! Die kann nun wirklich überall reinstrahlen. Die Schaltung in Alufolie einwickeln (rundrum) wird das Problem vermutlich beseitigen. wenn du wissen willst wo es herkommt musst du eingrenzen, also teilweise einwickeln, dämpfen filtern ....
Jens Martin schrieb: > Hendrik L. schrieb: >> Bus liegt auf meinem Labortisch (mit RASPERRY Pi und PCF8574 auf Boards >> angeschlossen). > > ungeschützt > >> >> Buslänge zwischen 20 und 30 cm - aufaddiert! > > egal, kommt auf die wirksame Antennenlänge an > > >> >> Direkt darüber die Leuchtstoffröhre (1 Meter Abstand)! > > Die kann nun wirklich überall reinstrahlen. Die Schaltung in Alufolie > einwickeln (rundrum) wird das Problem vermutlich beseitigen. > > wenn du wissen willst wo es herkommt musst du eingrenzen, also teilweise > einwickeln, dämpfen filtern .... Alufolie ist ein gute Idee - das werde ich ausprobieren! Danke!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.