mehrere ATMega8 verbinden

Gast #2172092
Lesenswert?

Hallo,

ich möchte mehrere ATMega8 verbinden, in der Form, dass es einen Master 
gibt, der festlegt, wann die Slaves senden dürfen und nacheinander von 
diesen, sagen wir zwei weiteren ATMegas, Befehle empfängt.

So sollte der Master dem ersten Slave sagen, dass er etwas senden darf. 
Daraufhin sendet der erste Slave und der Master empfängt dies und wertet 
es aus. Dann sollte der Master dem zweiten Slave sagen, dass er etwas 
senden darf, welcher daraufhin Daten an den Master sendet usw.

Wie lässt sich dies am einfachsten lösen? Bis jetzt denke ich das ganze 
über TWI zu lösen, da es hier vielfältige Transmission Modes gibt. Oder 
ist hierfür SPI oder gar UART zu bevorzugen?


Vielen Dank und viele Grüße
Tom
#2172114
Lesenswert?

Es gibt ein vorgefertigtes Projekt indem der als Master deklerierte 
Atmega auf ein Daten Array vom Slave zugreifen kann.

Also kann der Slave seine Werte in DATA[..] abspeichern und der Master 
kann sie zu jeder zeit und von jedem Slave auslesen.

Ich weis nur nicht mehr woher ich das habe. Goggle.

Die Dateien hab ich auf dem Rechner, nur ein wenig verändert.
Gast #2172119
Lesenswert?

das was du suchst ist folgende Bibliothek:

http://www.jtronics.de/elektronik-avr/lib-i2ctwi-avr.html

Die Biblitothek ermöglicht eine I2C/TWI Kommunikation über das TWI 
Interface von Atmel. Der verwendete Controller wird dabei als Slave in 
dem Bussystem verwendet.Die Bibliothek ist so programmiert, dass der 
Slave wie ein I2C-Speicher (I2C-Epprom) funktioniert.
...unterstützt werden glaube ich alle Controller mit TWI interface.

Als Master nimmst du die I2C Lib von Peter Fleury.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren