Hallo zusammen, am Serial-TX eines ATMEGA 2560 möchte ich drei "Verbraucher" anschließen: 1.) 433Mhz Radio. Das als einziges auch am Serial-RX des MEGA angeschlossen ist 2.) ATMEGA328 (nur am Serial-TX des APM) 3.) Arduino-Micro (also ein weiterer ATMEGA328) 1.) und 2.) zusammen funktionieren wunderbar. Sobald ich 3.) zusätzlich parallel anschließe bricht die Serielle Datenübertragung zusammen. Ich vermute mal, dass das für das ATMEGA 2560 einfach zu viele Verbraucher sind. Hat jemand von euch eine Idee? Ich dachte hier an Verstärker, Impendanzwandler usw. Als Workaround dachte ich ggf. an einen nicht-invertierenden Schmitt-Trigger (weiß aber auch nicht, ob dessen Ausgang soviel verträgt). VG Kai
Kai Kaas schrieb: > 1.) und 2.) zusammen funktionieren wunderbar. Sobald ich 3.) zusätzlich > parallel anschließe bricht die Serielle Datenübertragung zusammen. Dann häng doch mal 1.) oder 2.) ab und 3.) dran. Du könntest auch die Signalpegel kontrollieren.
Hi Kai, Deine "Verbraucher" sind sehr hochohmig. Somit glaube ich nicht, dass Deine Signalquelle ernsthaft belastet wird. Funktioniert den der Arduino-Micro mit dem ATMEGA2560 isoliert betrachtet. Ich vermute eher, dass Dein Arduino-Micro falsch konfiguiert ist. TX/RX gedreht. VG, Michael
Hallöchen Du willst 2 Sender Parallel anschließen?? Das wird glaube ich nicht gehen. Wen diese Grafik passt: https://www.sparkfun.com/tutorial/RS232vsTTL-BiteSize/ttl-timing.PNG Dan hast du auf der Datenleitung immer +5V (Wen einer der beiden nix sendet liegt dort 5v an) Dan kann der andere deine Datenleitung zwar versuchen auf 0V zu ziehen aber am Empfänger kommen immer die +5V vom den einen an. Bei einem Sender und 2 Empfänger könnte es vielleicht klappen… habe ich aber noch nicht ausprobiert. Ich hoffe ich habe das so richtig wiedergegeben. mfG Uwe
die serielle Schnittstelle ist erstmal eine Punkt zu Punkt Verbindung und kein Bus. Die Busfähigkeit kann man höchstens elektrisch nachbilden, mit RS485 oder Select-Pins. Aber warum so umständlich? Der Mega2560 hat 4 UARTs, werden also schon für 3 Geräte reichen.
Moin zusammen, es geht um 1 Sender und 3 Empfänger (die alle das gleiche Empfangen sollen!). Ich schaue mir das gleich nochmal auf dem Oszi an. Aber eurer Meinung nach sollte ein ATMEGA Ausgang durchaus 3 ATMEGA Eingänge bedienen können? VG Kai
Kai Kaas schrieb: > Ich schaue mir das gleich nochmal auf dem Oszi an. Häng einen Widerstand von z.B. 4k7 in die RX-Leitung jedes Empfänger. Bei friedlicher Übertragungsrate stört der die Übertragung nicht und du kannst anhand der gemessenen Pegel gleich feststellen, wer der Bösewicht ist und was er tut.
Die ATMegas haben eigentlich recht hochwertige Ausgangsports und sollten drei Empfänger als Last treiben können. 1.Hast du die Pins am ATMEGA328 richtig initialisiert? 2.Ist der ATMEGA328 auch richtig angeschlossen? (RX an TX sowie TX an RX!) 3.Hat der ATMEGA256 sowie der ATMEGA328 die selbe Versorgungsspannung? Bei unterschiedlichen Versorgungen kann es sein das einer von den beiden über die Schutzdioden am Port die Signalpegel kurzschließt.
Kai Kaas schrieb: > bricht die Serielle Datenübertragung zusammen. Ich > vermute mal, dass das für das ATMEGA 2560 einfach zu viele Verbraucher > sind. Wohl kaum, die Eingänge sind ziemlich hochohmig, der Ausgang hingegen ziemlich niederohmig, Überlastung ist also kaum zu erwarten, jedenfalls solange kein Schaltungsfehler vorliegt und alle Teilnehmer dieselben Logikpegel haben. Viel wahrscheinlicher sind bounces, also Signalreflektionen durch die fehlende Impedanzanpassung und ggf. eine obendrein verzweigte Topologie der physischen Verbindungen. Mögliche Abhilfen: Führe den "Bus" als Line vom Sender zum ersten Empfänger, von dort zum zweiten und von dort zum dritten. Auf dem dritten Empfänger schließt du die Line mit einem Widerstand gegen Masse ab. So groß wie möglich, so klein wie nötig. Wird wohl so bei ein paar hundert Ohm bis ein paar kOhm sein. Ein Minimum von etwa 200 Ohm darfst du aber auf jeden Fall nicht unterschreiten, sonst hast du tatsächlich eine Überlast-Situation mit entsprechendem Einbruch der Pegel. Alternativ kann man auch bewußt eine Sterntopologie wählen, also drei Strippen jeweils direkt von Sender zum Empfänger und dann jede Strippe einzeln per Längswiderstand (Größenordnung: einige kOhm) direkt vor dem jeweiligen Empfänger bedämpfen. Beide Ansätze haben ihre Vor- und Nachteile. Geht es primär um hohe Datenraten, ist die Line-Variante zu bevorzugen, steht hingegen ein geringer Energieverbrauch im Vordergrund, ist die Sternvariante besser geeignet.
Floh schrieb: > Die Busfähigkeit kann man höchstens elektrisch nachbilden, > mit RS485 oder Select-Pins. Warum? Als reine Verbindung zwischen einem Master und mehreren Slaves kann man auch eine Softwareadressierung benutzen. Problematisch ist nur die Senderichtung.
Noch eine dumme Frage: sind alle GNDs verbunden?
Vermutlich hat ein Verbraucher keine VCC und wird über die Clamping-Diode mit versorgt. Je nach Laststrom geht der Sender dann in die Knie.
Ich bin mir unsicher, wie die Serial-TX der ATMEGAs arbeiten. Würde ein Pullup-Widerstand auf VCC ggf. auch helfen? Bin noch nicht zum Scopen gekommen. Halte auch auf dem Laufenden...
Kai Kaas schrieb: > Ich bin mir unsicher, wie die Serial-TX der ATMEGAs arbeiten. Ich würde mal behaupten: Das sind elektrisch ganz normale Ausgänge.
Ein CMOS-Ausgang kann bequem 100 CMOS-Eingänge treiben.
Peter Dannegger schrieb: > Ein CMOS-Ausgang kann bequem 100 CMOS-Eingänge treiben. ... wenn die Frequenz nicht zu hoch ist. Also so pauschal ist die Aussage etwas riskant ...
Genau das ist die Frage, die mich schon die ganze Zeit interessiert, von welcher Übertragungsrate reden wir hier eigentlich?
Datenrate: 56k (Auslastung ca. 30%)
Das ist ja nicht so schnell und eher unproblematisch. Läuft es denn jetzt? Wenn nein, dann sei auf Wolfgangs Vorschlag 2013-11-17 12:50 verwiesen.
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.