Forum: Mikrocontroller und Digitale Elektronik mehrere ATMega8 verbinden


von Tom Linz (Gast)


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

von Lehrmann M. (ubimbo)


Lesenswert?

Tom Linz schrieb:
> 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?

TWI kommt auf die Distanz an
RS232 (UART) und SPI sind keine Bussysteme, und damit ungeeignet

von Simon A. (testnetz)


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.

von Martn (Gast)


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.

von Tom Linz (Gast)


Lesenswert?

Genial!
Ich werde es gleich morgen ausprobieren.

Vielen Dank und viele Grüße
Tom

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
Noch kein Account? Hier anmelden.