Hallo Ich habe 1 Arduino UNO Board (Spannungsversorgung durch USB) und ein weiteres Atmega328 Board (mit +5V) - also 2 Boards mit getrennter Spannungsversorgung. Beide Boards sollen analoge und digitale Signale austauschen und mittels SPI oder TWI miteinander kommunizieren. Reicht es, wenn ich bei beiden Boards GND miteinander verbinde? Mit freundlichen Grüßen Hannes
Hallo Meine Frage bezieht sich auf die getrennten Spannungsversorgungen ?. Dass die anderen Signale auch entsprechend verbunden werden müssen ist selbstverständlich ?. Mit freundlichen Grüßen Hannes
Hannes schrieb: > Reicht es, wenn ich bei beiden Boards GND miteinander verbinde? Nein, du möchtest ja wohl auch weitere Leitungen, I/O Pins, miteinander verbinden. Wenn aber Arduino A ein high Sigal liefert und daran Arduino B angeschlossen ist, dessen Versorgungsspannung gerade fehlt, dann fliesst Strom aus dem Ausgang von Arduino A über die Eingangsschutzdiode des Arduino B in VCC und versucht dessen Stromversorgung zu übernehmen. Was nicht klappt aber quasi ein Kurzschluss ist Also zumindest Widerstände in die Leitungen, wenn sie nicht gar zu schnelle Informationen übertragen z.B. 1k, begrenzt den Strom auf 5mA, besser noch 10k. Sauber wird die Lösung, wenn nur open collector geschaltet wird
1 | --------+ +------ |
2 | +5V|--1k--+---------+ +--1k--|+5V |
3 | | | | | | |
4 | Input|------+ +-------)-+------|Input |
5 | ArduinoA| | | |ArduinoB |
6 | Output|--10k--|< BC547 >|--10k--|Output |
7 | | |E E| | |
8 | GND|--------+-------+--------|GND |
9 | --------+ +-------- |
So können keine Querströme fliessen.
Hallo Michael B. Vielen Dank für deine Hilfe ?. Das mit den Widerständen in den Leitungen war mir klar, das mit den Open Collection Transistoren jedoch nicht. Ich werde zudem die Versorgungsspannung des "Partner Atmega" abfragen und dann erst den Datenaustausch freigeben wenn dessen Spannung entsprechend hoch ist (solange dies nicht der Fall ist bleiben alle Ausgänge als Eingänge deklariert). Mit freundlichen Grüßen Hannes
Hannes schrieb: > Meine Frage bezieht sich auf die getrennten Spannungsversorgungen ?. Immer noch ja Michaels Hinweis ist aber auch richtig. Wenn du beide Module gleichzeitig einschaltest, kannst du dir den Aufwand allerdings sparen. Das kannst du eventuell mit einem HUB erreichen, den du fest einbaust. Da musst du für deinen Fall abwägen, was einfacher oder sinnvoller ist.
Halle Stefan F Vielen Dank für deine Antwort ? Ich kann leider keinen festen Hub verwenden und kann auch nicht garantieren, dass beide Spanunngsversorgungen immer gleichzeitig eingeschaltet werden (worst case - kann mehrere sek Differenz sein). Mit freundlichen Grüßen Hannes
Hannes schrieb: > kann auch nicht garantieren, dass beide Spanunngsversorgungen > immer gleichzeitig eingeschaltet werden Dann würde das gemäß Michaels Anweisung trennen. Einfache Widerstände würden notfalls auch gehen, müssen dann aber recht hochohmig sein, damit der AVR nicht irrtümlich durch diese Widerstände (und seine ESD Schutzdioden) gespeist wird und dann misst baut.
Hallo Stefan ⛄ F. (stefanus) Vielen Dank für Deinen Hinweis! Ich werde 10kOhm Widerstände nehmen und die SW entsprechend implementieren (Check der Spannungsversorgung des Partners und dementsprechend Freigabe der Ausgänge). Sollte dennoch ein Prozessor dadurch kaputt werden, bleibt als "Rettungsanker" die von Michael B. vorgeschlagene open collector Lösung. mit freundlichen Grüßen Hannes
Hannes schrieb: > Sollte dennoch ein Prozessor dadurch kaputt werden Mit 10k bist du bestimmt auf der sicheren Seite. Nur die Übertragungsrate ist halt beschränkt - falls das für dich überhaupt relevant ist.
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.