Hallo liebes Forum, ich möchte bei meiner Schaltkarte mit ATtiny4313, Relais und Triacs, Netzsynchronisiert gerne die PCF-Expander nachbilden. Ich wollte gerne Adresse, Datenpaket Relais, Datenpakete der Dimmstufen (4stk)senden, der ATtiny4313 soll einfach nur empfangen und verwalten, sofern die Adresse mit seiner übereinstimmt. Weder Master noch ATtiny sollen rücksicht auf "Formalitäten" nehmen, sprich der Master sendet das Signal alle 100ms, egal ob es den Slave wirklich gibt oder nicht - der ATtiny soll nichts bestätigen oder zurücksenden, sondern wirklich nur empfangen - nichts weiter; wie die PCFs. Hat jmd. eine Idee, wie man das mit der USI macht, ich habe div. Quellcodes ausgetestet, aber das klappte nicht, bzw habe ich das USI auch nicht verstanden wie man das als I²C konfiguriert.
Marius Dege schrieb: > der ATtiny soll nichts bestätigen oder > zurücksenden, sondern wirklich nur empfangen - nichts weiter; wie die > PCFs. Die PCFs bestätigen mit ACK. Das muß der ATiny auch machen. Zusätzlich muß der Master das Clock Stretching beherrschen, da der ATtiny einige Zeit braucht, um den Interrupt zu behandeln.
Hallo, du hast recht mit den PCFs, ich meine das ich beim Master alles ignoriere, wenn er das also an den ATtiny sendet, ist es ihm egal ob der Bestätigt oder nicht, da der slave existieren kann, muss er aber nicht. Wie muss das denn mit dem stretching laufen, das klingt ziemlich kompliziert. Hat jmd. eine Idee, wie ich den Tiny konfigurieren muss, bzw was beim Master zu beachten ist?
Du scheinst noch nichts über I2C gelesen zu haben. Das ACK ist zwingender Bestandteil, es läßt sich nicht ignorieren. Das HW-I2C benötigt es. Das HW-I2C beachtet auch automatisch das Stretching.
Jaein, ganz tiefgehend weis ich es nicht, grob schon. Beim Master bekomme ich theoretisch zwar bei Artribation lost, usw Werte zurückgeliefert, aber die ignoriere ich, ich sende einfach alle 100ms das Signal, ob da nun ein Slave reagiert oder nicht wird vernachlässigt. Stretching habe ich noch nicht gehört, wenn HW I2C es aber automatisch macht, dann sollte auf der Masterseite ja alles klar gehen, ist ein ATMega1284. Wie funktioniert das nun bei den Tiny, Quellcode Beispiel?
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.