ok, ich probiere das mal...
...hab dann noch überlegt, alle Daten bit-weise zu übertragen, es sollen ja mehrere Module seriell verbunden werden, könnte dann bei 8 Modulen so aussehen, das erste Byte gibt eine Fehlermeldung weiter, das zweite Byte gibt die aktuelle Modul-Nummer ans nächste Modul:
Modul 1 sendet: 00000000 00000001 (Modul 1 ok)
Modul 2 sendet: 00000000 00000010 (Modul 1+2 ok)
Modul 3 sendet: 00100000 00000011 (Modul 1+2 ok, Modul 3 Fehler)
Modul 4 sendet: 00100000 00000100 (Modul 1+2+4 ok, Modul 3 Fehler)
Modul 5 sendet: 00100000 00000101 (Modul 1+2+4+5 ok, Modul 3 Fehler)
Modul 6 sendet: 00100000 00000110 (Modul 1+2+4+5+6 ok, Modul 3 Fehler)
Modul 7 sendet: 00100010 00000111 (Modul 1+2+4+5+6 ok, Modul 3+7 Fehler)
Modul 8 sendet: 00100010 00001000 (Modul 1+2+4+5+6+8 ok, Modul 3+7 Fehler)
Auf dem Modul brauch keine Auswertung erfolgen, es muss nur die empfange Modul-Nummer um 1 erhöht werden und bei einem Fehler muss ein bit an der richtigen Stelle auf 1 gesetzt werden.
---
Edit: mit der binären Übertragung brauche ich nur 3 kByte Programmspeicher, da spare ich mir das ganze String-Geraffel, warum nicht gleich so...
Lesezeichen