RX/TX und USB

ich wollt mich mal erkundigen, welche Möglichkeiten ich habe, wenn ich meine RX/TX Ports als Datenleitung verwenden will und hin und wieder ohne, dass ich gleich alles Umlöten muss ein neues Programm aufspielen kann.

Beides gleichzeitig funktioniert ja nicht (gibt ja den berühmten not in sync fehler)
Ich hätte mir gedacht, dass ich einfach einen Kippschalter einbaue, damit ich beim Neueinspielen eines Programmes einfach rx und tx unterbreche. (siehe Bild im Anhang)

Das würde ganz sicher funktionieren (vermut ich mal)
Gibt es dafür vl Alternativen, vl Dioden?

Der Arduino soll in ein Gehäuse verbaut werden. Der Code der jedoch auf dem Arduino läuft wird mit der Zeit noch modifiziert und damit wäre es sehr mühsam jedesmal den Arduino vom Shield zu lösen um ihn updaten zu können

Benutze einen Arduino UNO R3 mit einem selbst gestalteten Shield

Geht auch ganz ohne Hardware - mit der SoftwareSerial Bibliothek. Einfach die RX/TX an die SoftwareSerial-Pins und der Arduino kann ganz normal programmiert werden. Beispiel-Sketche sind bei der Arduino IDE dabei.

mh, klingt interessant, daran habe ich noch gar nicht gedacht.
Mein Problem wäre dann aber nur, dass ich statt den Pin 0 und 1, 2 andere Pins benötigen würde.
Es sind aber leider alle anderen Pins durch ein Shiftregister und ein 128*64 LCD belegt.
Gibt es dann noch eine andere Möglichkeit?

Hi,
habe bei mir ein ähnliches Problem, daher passt der Thread ganz gut.
Wenn ich an RX und TX ein Shield nutze, das zur Kommunikation die serielle Schnittstelle benötigt (http://atlas-scientific.com/_files/instructions/Wiringdiagram.pdf)
funktioniert das dann auch mit der Software Serial so, dass ich dann auch weiterhin über USB uploaden kann?

Was ich übrigens nicht verstehe:
Ich hatte bei mir auf den MEGA eine Platine aufgesetzt, bei der an RX und TX schon eine Leiterbahn liegt, die an einen weiteren bisher nicht belegten PIN geht. (Der eben für genau das oben genannte Shield ist, das ich dann einfach nur auf meine Platine andocke). Ab dem Moment konnte ich keinen Sketch mehr uploaden. Erst als ich die PINs entfernt habe. Ist das so richtig?

Gruß

mh, wenn das stimmt was du berichtest, dann würden mir die Schalter auch nix bringen.

Ich werde es trotzdem mal probieren mit den Schaltern und dann berichten

//EDIT:
Ich habe jetzt vor den Widerständen 2 Kippschalter eingelötet -> funktioniert
Stellung 1 EIN
Daten werden an RX und TX übertragen

Stellung 2. AUS
Damit kann ich jetzt ohne dass ich RX und TX abstecke Daten über USB auf meinen Arduino spielen

meine Ausgangsfrage ist leider noch offen.
Gibt es neben dem Software Serial noch hardwaretechnische Umsetzungen (vl ohne Kippschalter) welche mir eine Übertragung trotz verwendeten RX und TX Port ermöglichen?

Man kann übrigens auch A0-A5 als digitale Ports nutzen. Es sind dann die Port-Nummern 14-19 (falls man zuwenige digitale Pins hat). Und wenn alles nicht reicht, dann ein Shiftregister z.B. 74HC595 oder einen I/O-Port-Expander etc.

Habe mir das SoftwareSerial mal genauer angeschaut

Limitations

The library has the following known limitations:

If using multiple software serial ports, only one can receive data at a time.
Not all pins on the Mega and Mega 2560 support change interrupts, so only the following can be used for RX: 10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69
Not all pins on the Leonardo support change interrupts, so only the following can be used for RX: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).

Gelten diese Limitationen auch für den UNO oder hat dieser keine Beschränkungen?
Ich könnte eventuell den Pin 12 und 13 noch freibekommen bzw. 12 und 19 (A5)

Hallo,
auch ich bin neu bei der arduino Programmierung und habe eine Frage, die sich auf ähnliches Problem bezieht.

Ich habe ein arduino als Interface zu Auslesen einer ECU. Der entsprechende Code wurde in einem hierfür passenden Forum verteilt.
Wenn ich jetzt die ECU beschreiben will, gebrauche ich ein Interface, welches einen FDTI Chip und einen Watchdog beinhaltet.

Grundsätzlich müsste ich diese Funktion auch über das arduino durchführen können.
Der FDTI macht nur USB auf UART und meldest sich entsprechend als virtueller COM-Port, was das arduino auch kann.
Den Watchdog könnte ich über einen PWM Kanal realisieren.

Meine Verständnisfrag ist nun:
Über die Libary "NewSoftSerial" kann ich mir eine weitere UART RS232 auf USB Schnittstelle schaffen. Somit kann ich das o.g. Interface ersetzen.

So wie ich diesen Threat verstehe, gebrauche ich dies aber garnicht und kann die RX/TX Anschlüsse direkt nutzen, wenn ich das arduino nur als Interface nutze und nicht an der arduino-PC-Software betreibe ?
Zum Neuaufspielen eines geänderten Programmes gebrauche ich einfach nur das Flashprogramm zu schliessen und die ardunio-SW zu öffnen.

Habe ich dies jetzt richtig verstanden, oder gebrauche ich ein Programmierung des arduino, um die "einfache" Interfacefunktion USB auf RS232 UART zu nutzen ?

Führ Hilfe, Tipps Hinweise, bin ich dankbar

GRuss

btw.:
Welches Program wird benötigt, um die netten Verschaltungsbilder zuer erstellen, die auch hier gepostet werden ?