Die einzige für mich wirklich prozessorlastsparende Variante
wäre mit 2 µC zu arbeiten.
A) Einer für die Busanbindung, der nur lauscht und kommuniziert
und nur wenn der Slave wirklich gemeint ist dann am 1.
Controller nen Int auslöst oder der Hauptprozessor schiebt
kontinuierlich in Arbeitspausen seine Daten in den "Kommunikator", die
der dann auf Anfrage weiterschickt,
B)oder wie beim SPI ne Slave-Select-Leitung.
Ansonsten kommt der Slave um das Lauschen nicht herum.
Klar, das braucht etwas Rechenzeit, nur ob die bei den Geschwindigkeiten
der µC wirklich ins Gewicht fällt ?
Für zeitkritische Busslave Geschichten wäre die A-Variante sinnvoll,
für unkritische Anwendungen wäre die Interruptvariante denkbar.
Im Übrigen baut man einen Bus auf um Leitungen zu sparen
und die Daten die drüber laufen sollten auch nicht unbedingt
jede Handlungsanweisung für den Slave beinhalten sondern
nur die "Konfiguration" also Umgebungsvariablen.
Als Antwort reicht dann "ausgeführt" Oder "Ergebnis=xy". Der
Rest sollte in der Software des Slaves ablaufen, dafür benutzt man
nämlich Slaves, sonst könnt man ja gleich alles an einen µC anbinden.
Wieviel Trafic auf dem Bus ist und was da an Rechenlast verbraten wird
hängt von der "Intelligenz" der Busteilnehmer ab.