Hallöchen! Ich möchte einen ATMEL MEGA16 als Master an einem TWI-Datenbus betreiben. Da der Mega16 über eine hardwarebasierende TWI-Schnittstelle verfügt, ist die Realisierung nicht ganz so problematisch.Habe weil es schnell gehen soll mir die TWI-Routine(twimster.c (HARDWARE)) von Peter Fleury besorgt.(DANKE PETER)! Der TWI-MASTER generiert momentan auch schon ganz brav das SCL-Signal.Da noch kein Slave angeschlossen ist, sind die Siganle auf SDA noch nicht so aussagekräftig. Jetzt möchte ich als Salves mehrere TINY2313 betreiben. Jedoch musste ich leider feststellen, das der Tiny2313 nicht über eine Hardware-TWI-schnittstelle verfügt, sondern mit einer so genannten USI-Schnittstelle ausgerüstet ist. Nun bin ich plötzlich mit meinem Latin am ENDE! Ich habe noch nie mit der USI-Schnittstelle geabreitet....Ein Blick ins Datenblatt hat leider nicht den gewünschten Erfolg gebracht. Im Internet habe Beispiele zwischen USI_MASTER --> USI_SLAVE TWI_MASTER --> TWI_SLAVE gefunden.....jedoch keine Infos über nutzung zwischen: TWI_MASTER --> USI_SLAVE! Hallo IHR da draussen...kann mir jemand weiterhelfen? Oder kann mir jemand in ein paar Worten die Funktion der USI Schnittstelle erklären? Habe hier in der Codesammlung ein Beispiel für einen TINY 2313 gefunden. Dieses Beispiel basiert jedoch auf die ATMEL APPLICATIOn AVR312....dieser SLAVE funktioniert bei ATMEL mit einem USI_MASTER http://www.mikrocontroller.net/forum/read-4-219050.html#new Funktioniert es, wenn ich auf einen Tiny2313 das Programm raufspiele und dann an dem DATENBUS anschliesse oder....muss ich da irgendwas anpassen....! Ich weiss ich habe jetzt ganz schön viele Fragen gestellt. Jedoch hoffe Ihr könnt mir trotzdem wweiterhelfen. Eure Alana
Die beiden Seiten lassen sich voneinander unabhängig betrachten. Für den Master braucht's also Code für TWI/Master und für den Slave entsprechend USI/Slave. Für beides existieren auch Atmel Application Notes.
Habe neulcih was ähnliches aufgebaut und den USI-TWI-Code aus der Atmel AppNote benutzt. Hat nicht funktioniert: alle Nase Lang hat der Master (ein Mega8) keine ACKs auf die gesendete Adresse gesehen und auch sonst hatte ich massenhaft Übertragungsfehler. Ich habe dann aufgegeben und einfach auch Mega8 als Slaves verwendet. 35 Cent pro stück teurer, also kann ich mir für jede Stunde debuggen locker nen Zehnerpack davon leisten :-) hase
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.