mal wieder habe ich kleines Problem:
Ich möchte gern zwei Arduinos mit einem zentralen dritten verbinden. Der Arduino in der Mitte ist jeweils über TX0 (Pin 1) und TX3 (Pin 14) mit einem anderen verbunden. Massen sind ebenfalls verbunden. Allerdings scheint der Master nur über den TX0-Pin Daten zu senden - bei TX3 funktioniert es nicht. Die beiden anderen Arduinos sind richtig programmiert, denn es funktioniert wenn ich TX0 mit TX3 vertausche.
Serial ist mit dem 16U2 verbunden, darf also nicht verwendet werden.
Das würde ich nicht so krass formulieren. Aber bei Megas mit so vielen Seriellen Schnittstellen wäre es blöd.
Warum verwendest du im Master nur Serial, wenn du behauptest, du wolltest mit 2 Slave-Arduinos kommunizieren?
Warum verwendest du Serial, wenn du auf TX3 senden willst?
Klar, kann man den 16U2 im Reset halten, aber dann ist USB auch tot.
Will man das?
KA!
(ist da überhaupt ein 16U2 drauf?)
Nee..
Ich glaube, man sollte das erstmal "flach" angehen, also Serial ignorieren.
Und wenn dann alle anderen Seriellen "verbraucht" sind, kann man ja nochmal nachdenken...
Warum verwendest du im Master nur Serial, wenn du behauptest, du wolltest mit 2 Slave-Arduinos kommunizieren?
Warum verwendest du Serial, wenn du auf TX3 senden willst?
Ich glaube, du sollst ihm das Programm schreiben!
:o :o :o
Ein Blick in den Schaltplan kann ja so informativ sein ;D
combie:
(ist da überhaupt ein 16U2 drauf?)
Ja, ATMEGA16U2-MU.
@Techniker89: Die serielle Schnittstelle ist im Unterschied zu I2C nicht busfähig. Der Mega 2560 hat aber drei freie, nicht durch USB verwendete serielle Schnittstellen, die mittels Serial1, Serial2 und Serial3 angesprochen werden können. Siehe "Input and Output" und Serial. So kannst Du sternförmig verdrahten und kommunizieren.
Selbst wenn ein 16U2, 8U2 oder auch CH340 dran ist, könnte man direkt an TX0 und GND was anschliessen. (Wenn man es müsste)
Aber, wie schon mehrfach erwähnt, muss man ja nicht.
Wenn es wirklich nur drum ginge, vom Master beiden Empfängern das gleiche zu senden und nichts zu lesen, könnte man sternförmig TX3 mit beiden RX1 verbinden. Und bräuchte Serial3.println("Hallo Ihr beiden");
nur einmal zu senden.
Dein Link sagt "Mehr als 10 verfügbar" in Berlin. Wenn der Anbieter zählen kann, sollte es ihn zu kaufen geben. Oder?
Leider gibt der TO nur spärliche Informationen, daher halte ich mich mit "nimm doch I2C, das ist ein Bus für viele Teilnehmer" zurück. Will er möglicherweise auch garnicht lesen.
Der Link sagt auch klar, dass es gar kein Arduino Mega ist, weder mit 16U2 noch mit 8U2.
Aber die 3 bis 4 HardwareSerials sollten, wenn "Kompatibel" schon auf Pins rausgeführt sein.
@Techniker89
Läuft denn mittlerweile deine Relaissteuerung, mit der du Probleme hast ?
Eine Rückmeldung ist hier schon angebracht, da ja einige dir geholfen haben.