Frank schrieb:
> ein SPI Signal sowie 5 weitere digitale Signale (Rotary,
> Pushbutton, Reset Signal)
Wo ist den der SPI-Master? Vermutlich der Controller. In welcher
Richtung werden die SPI-Daten übertragen?
Können die 5 Signale nicht an ein weiteres SPI-IC angeschlossen werden?
Dann können die SPI-I/Os in Reihe geschaltet werden und du hast nur noch
eine etwas längere SPI.
Soll die Übertragung transparent sein, also der Controller hat jetzt
schon einen SPI-Anschluss und 5 weitere Eingänge, die genau so erhalten
bleiben müssen (weil es z. B. ein Fremdprodukt ist) und deshalb auch am
Controller eine Rx/Tx-Hardware gebraucht wird, oder darf der Controller
mit der Aufgabe "Zerlegung" der Signale betraut werden?
> Dachte schon an einen zweiten Mikrocontroller und Verbindung via UART,
Das scheint mir, je nach weiteren Randbedingungen, auch sehr
naheliegend. Allerdings eine Randbedingung wie
> das will ich aber vermeiden weil kein Lerneffekt da wäre.
hätte ich jetzt nicht erwartet. Das haut mich etwas um.
Ich könnte eine kreativ lehrreiche Lösung mit HF-Übertragung der
Einzelsignale auf mehreren Trägerfrequenzen vorschlagen. Das wäre eine
transparente Lösung, käme mir aber doch etwas arg abgefahren vor.
Also was auch immer dahinter steckt:
Bei nur einer Leitung kann kein Takt übertragen werden. Selbsttaktende
Systeme sind aufwändiger. Bidirektionale noch aufwändiger. Die SPI für
die Übertragung zu dekodieren und mit den 5 weiteren Signale zu einem
Datenstrom zusammenzufassen, bleibt wohl nicht aus. UARTs sind für > 8
MBit/s auf jeden Fall zu langsam, insbesondere bidirektional. Sofern ein
µC genügend schnell ist, wird man kaum auf einen verzichten können.
Andernfalls käme ein CPLD in Frage, vielleicht, je nach Randbedingung
(s.o.), auf beiden Seiten. Das wäre leicht erhältlich und vielleicht
sogar lehrreich - oder kennst du das auch schon?
Mir scheint, ob es differentiell, LVDS oder asymmetrisch ist, ist dein
allerkleinstes Problem. RS485 (die bidirektionale Variante der RS422)
wäre sinnvoll.