Mein Vorschlag zur Einbindung der M128 in ein "RP6-Multimikroprozessorsystem" (klingt das nicht gut?), das zwischen den Plattformen als Single-Master-I2C implementiert wird, wäre:
Wir einigen uns darauf, ...
1. Die M256 WIFI wird Master.
2. RP6Base und M32 sind Slaves.
3. In einem gemeinsamen Projekt entwickeln wir einen universellen M32-Slave (genau wie der Base-Slave).
4. Die M128 wird nicht über I2C eingebunden.
5. Eine µC-µC-Direktverbindung (wie von SlyD vorgeschlagen) wird zwischen M128 und M256 über UART eingerichtet, und zwar von UART1 der M128 zu UART1 der M256 (beide bisher nicht genutzt). Vorteil: Weiterhin kann der RobotLoader oder ein Terminal an beiden Platinen an PROG_UART angeschlossen bleiben.
6. Mit einem Speed-Test ermitteln wir die noch sicher mögliche serielle Übertragungsrate zwischen M128 und M256.
7. Auf der M128 entsteht ein UART-Slave (meine spontane "Erfindung"), über die die M256 ähnlich Daten abfragen kann, wie von den I2C-Slaves.
8. Als "Interrupt-Leitung" zwischen M128 und M256 nutzen wir INT3 des XBUS (M128: INT6, M256: PCINT14). Vorteil 1: Der für I2C benutzte INT1 bleibt frei. Vorteil 2: Auch die M32 KANN diese "Interrupt-Leitung" lesen und schreiben (INT2).
So viel erst einmal ins Unreine gesprochen. Akzeptabel?
Lesezeichen