Hi. Wollte mal ob ich mit meinem ATtiny26 als Slave ein Clockstretching fabrizieren könnte und mein ATmega8 als Master auch gewillt ist darauf zu reagieren bzw. zu hören. Mir ist nämlich aufgefallen dass in der ISR des Tiny teilweise zuviel Code abgearbeitet werden muss und der Bus schon weiterläuft während der Tiny noch am schaffen ist.. das resultiert dann in einem NACK bzw Fehler eben.. kann ich die clockleitung beim Tiny USI auf low ziehen indem ich einfach das PORT-bit auf low setze und das DDR-bit auf high? Kommt der Mega damit klar? mfg PoWl
Vermutlich ja! Du musst nur darauf achten, dass der Master SCL nicht aktiv auf High zieht, sondern diese Aufgabe dem Pull up Widerstand überlässt. Wenn der Master die übliche TWI-Implementierung verwendet, macht er das so. Ein kleiner Schutzwiderstand in der SCL-Leitung wird Schäden vermeiden. Gruß Michael
beim ATmega8 vertraue ich voll und ganz auf das TWI-modul. Ich probiere das eben mal aus.. so eine scheisse ich beschäftige mich schon seit einer ganzen Woche mit dem scheiss USI!!! //Edit: So, habe das mal versucht aber jetzt geht irgendwie garnix mehr.. beim Daten senden bleibt er einfach hängen. Bzw. der Master empfängt kein ACK.. scheint wohl nicht auf den Slave warten zu wollen. Kann ich das irgendwie überprüfen?
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.