Hallo, ich arbeite momentan an einem Projekt, bei dem ich mich mit einem Arduino in eine Kommunikation einmischen moechte. Es geht um einen Mikrocontroller, welcher ein Display über SPI ansteuert. Ich kann ueber den Arduino auf die Leitungen zugreifen und meine SPI Signale senden, nur wenn ich dann die Original-Funktionen nutzen will, werden die, solange der Arduino angeschlossen ist, gestört und funktionieren nicht mehr. Mit einem Relais könnte ich das ganze leicht beheben, indem ich dieses zwischen die Datenleitungen des Arduinos klemme. Da ich aber keine Relais nutzen will, weiß ich gerade nicht weiter. Gibt es Möglichkeiten Signale wie MOSI oder CLK zu schalten? Würde ein Analog Switcher abhilfe schaffen? Vielleicht weiß ja jemand hier weiter, ich freue mich über jede Hilfe! Lg Keno
Muss kein Analogscbalter sein – da du ohnehin digital unterwegs bist, nimm doch einfach Logik Bausteine, z. B. And-Gatter oder Bustreiber mit Tristate-Funktionalität, sofern benötigt. Male bitte mal einen Schaltplan dessen, was du genau vor hast, und welche Leitungen du wie schalten willst.
Keno S. schrieb: > nur wenn ich dann die Original-Funktionen nutzen will, werden die, > solange der Arduino angeschlossen ist, gestört und funktionieren nicht > mehr. Dann machst Du was falsch. Der Arduino muß einfach nur seine SPI-Pins auf Eingang schalten und natürlich weiterhin versorgt werden.
Peter D. schrieb: > Keno S. schrieb: >> nur wenn ich dann die Original-Funktionen nutzen will, werden die, >> solange der Arduino angeschlossen ist, gestört und funktionieren nicht >> mehr. > > Dann machst Du was falsch. > Der Arduino muß einfach nur seine SPI-Pins auf Eingang schalten und > natürlich weiterhin versorgt werden. Wie meinst du das? Ich habe mir das Clk Signal per Oszilloskop angesehen, wobei man sieht, dass das Signal anstelle von 5-0V nur noch von 5-4,8V geht (Zu beachten ist, dass die Ich SPI_Mode_3 nutze, also Clk ist standard High). Gehe also davon aus, dass der Arduino durch seinen Clk High Output das Clk Signal des anderen Microcontrollers „hoch zieht“. Die SPI Pins aus Eingang setzen verstehe ich nicht ganz, wie ist das realisierbar? Schon mal Danke für die Bemühungen!
Keno S. schrieb: > Die SPI Pins aus Eingang setzen verstehe ich nicht ganz Was ist daran nicht zu verstehen? Pins setzt man beim AVR auf Eingang, indem man die alternative Funktion (SPI) disabled und das entsprechende Bit im DDRx-Register auf 0 setzt. Also genau so, wie es im Datenblatt steht.
Horst G. schrieb: > Muss kein Analogscbalter sein – da du ohnehin digital unterwegs bist, > nimm doch einfach Logik Bausteine, z. B. And-Gatter oder Bustreiber mit > Tristate-Funktionalität, sofern benötigt. > > Male bitte mal einen Schaltplan dessen, was du genau vor hast, und > welche Leitungen du wie schalten willst. Die Mosi und Clk Leitung des Mega's müssen geschaltet werden, da der Mega sonst die Signale des anderen Mikrocontrollers stört. (Ich denke mal durch einen inneren Pullup Widerstand?) Das ist auf jeden Fall mein Ansatz. Schaltplan ist im Anhang, hier auch schon mal vielen Dank für die Bemühungen!
Peter D. schrieb: > Keno S. schrieb: >> Die SPI Pins aus Eingang setzen verstehe ich nicht ganz > > Was ist daran nicht zu verstehen? > Pins setzt man beim AVR auf Eingang, indem man die alternative Funktion > (SPI) disabled und das entsprechende Bit im DDRx-Register auf 0 setzt. > Also genau so, wie es im Datenblatt steht. Okay, also würde ich dann die SPI Kommunikation beenden, danach die SPI Pins als Eingang setzen und wenn ich sie wieder benötige, die Pins wieder als Ausgang definieren und die SPI Kommunikation wieder starten?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.