Zitat Zitat von lwl Beitrag anzeigen
Als Slave spricht dort was gegen den ATTiny2313? In meinem Fall sollen die Slaves nur auf Anfrage Daten aus einem Sensor holen, Verarbeiten und auf Kommando an den Master Schicken.
Wenn Dein Programm da reinpasst, spricht da nichts dagegen.

Zitat Zitat von lwl Beitrag anzeigen
Als Master würde ich den ATmega644p nehmen, der hat 2 Uarts den er soll mit Bus UND dem PC Kommunizieren und mit dem PC per RS232 (Kabellänge von 50m +- etwas machbar?)
50m ??? Eher nicht (ohne weiteres). Warum nicht auch RS485 ? Oder Master näher am PC plazieren.

Zitat Zitat von lwl Beitrag anzeigen
Als System dachte ich an die 4-Draht Lösung, weil dort reagieren, wenn ichs richtig verstanden habe, die Slaves nur auf Master-Anfragen und nicht auf die Slave Sendungen.
Da bringst Du was durcheinander. 4-Draht Lösung bedeutet Full-Duplex, also gleichzeitiges Senden und Empfangen.
Bei 2-Draht RS485 (Half-Duplex) wird der Reihe nach Gesendet und danach Empfangen.

Zitat Zitat von lwl Beitrag anzeigen
Was für ein Treiber müsste ich den für das 4-Draht System nehmen?
Da gibt es sehr viele...............
z.B. MAX485/MAX488/MAX491/u.s.w.

Zitat Zitat von lwl Beitrag anzeigen
Beim 2 Draht System wollte ich den "sn75176" nehmen, ich weiß nicht der Sparsamste aber bei insgesamt max 15 Units denk ich ist er okay.
Geht auch mit 4-Draht Bus.



Zitat Zitat von lwl Beitrag anzeigen
Für die Adressierung werde ich mich vermutlich für Dip Schalter entscheiden, aber das ist ja Geschmackssache oder?
Richtig.
Ich nehme allerdings feste Adressen im Programm. Warum sollte ich die Adressen ändern ?

Zitat Zitat von lwl Beitrag anzeigen
Vom Protokoll her wollte ich es wie folgt machen:

1. Master sendet im vorgegeben Zyklus an 00 (ist ja Adresse für Alle, wenn ich das richtig verstanden habe) den Befehl, Daten aus dem Sensor holen.
2. Master Spricht nun alle Slaves seperat an und holt die Daten
3. Slaves Antworten
4. Master bereitet Daten für Ausgabe auf und los gehts.
Wozu Schritt 1 ?


Mein Protokoll habe ich mit MPCM (9Bit Übertragung) aufgebaut (im Datenblatt nachschauen).
Die Slaves (der Master auch) schauen in der ISR auf gesetztes 9.Bit (Adresse wird übertragen) und machen dort nur weiter wenn sie adressiert sind (darauf folgendes Frame) > Telegramm holen und entsprechend reagieren / wenn nein > weiter in der Hauptschleife.
Man muß nur das MPCM-Bit sinnvoll auf "1" und "0" schalten..............

(der µC wird nur bei gesetztem 9.Bit in die ISR geschickt wenn der MPCM-Modus aktiv ist)

Slaves :
Die Hauptschleife bearbeitet den Sensor und der µC wird ab und zu in die ISR geschickt.

Master:
Die Slaves der Reihe nach adressieren, Daten abholen (auch in der ISR) und weiterverarbeiten..........