Serielle Schnittstellen?

Hallo,

ich möchte mir ein Arduino Board zulegen, dabei ist es so das ich ein ext. Modul mit TTL Rx/Tx ansteuern muss, gleichzeitig möchte ich zum Debuggen Werte seriell ausgeben. Geht das mit einem UNO oder brauch ich dazu den MEGA? bzw ist die Schnittstelle an der der USB hängt nicht die gleiche die an Pins PD0 &1 rauskommt?

ATamer

hi,

ja auf die letzte frage.

alternativen:

hardware lösung ist ein mega mit 4 seriellen schnittellen, oder

als software-lösung die libraries softserial oder altsoftserial, da läuft das dann auf anderen pins.

exotisch wären umsetzer von i2c oder spi auf serial.

gruß stefan

Du kannst mit SoftwareSerial oder besser AltSoftSerial eine serielle Schnittstelle in Software emulieren. Das geht mit relativ niedrigen Baudraten wie 9600 meistens gut.

Hallo, nimm den Mega, keine Probleme mit den seriellen Schnittstellen. Mein Sketch nutzt die 1, 2, und 3 "gleichzeitig". Erst bin ich skeptisch gewesen, aber das funktioniert wirklich ohne Probleme. Einfach mit SerialX.print(). Gruß und Spaß Andreas

Danke euch , das blöde ist dass nicht alle Shields für den MEGA passen da der größer ist

Ein Leonardo oder Micro hat auch eine freie verfügbare Hardware Serial Schnittstelle, es gibt auch den Elektor Uno mit 328PB der zwei Hardware Serial Schnittstellen hat. Der Due hat auch mindestens eine freie Hardware Serial Schnittstelle.

hi,

Danke euch , das blöde ist dass nicht alle Shields für den MEGA passen da der größer ist

naja, stimmt, er ist größer. aber die shields passen ja trotzdem. nur wenn sie SPI benutzen, sollten sie auch die sechspolige verbindung "nach unten" haben (wie z.b. das ethernet-shield sie hat).

gruß stefan

Hallo,

TxD0/RxD0 sind die Pins die an USB gehen, dass stimmt, deswegen sollte man die erstmal nicht für sich verwenden. Sonst gibts beim unbedarften beschalten Datensalat und das nicht nur beim ausgeben, sondern viel mehr beim flashen. Das wäre deine Debugschnittstelle. Mein guter Rat, wenn man vorher schon weiß das man mehrere serielle Schnittstellen benötigt, dass ist in meinen Augen am UNO an der falschen Stelle gespart.

Whandall: Ein Leonardo oder Micro hat auch eine freie verfügbare Hardware Serial Schnittstelle, es gibt auch den Elektor Uno mit 328PB der zwei Hardware Serial Schnittstellen hat. Der Due hat auch mindestens eine freie Hardware Serial Schnittstelle.

heisst das bei USB Debugging ist PD0 &1 frei? oder was meist du mit freie Schnittstelle

ATamer: heisst das bei USB Debugging ist PD0 &1 frei? oder was meist du mit freie Schnittstelle

Ja.

Serial geht über USB, Serial1 über die Pins 0 und 1, beim Elektor UNO sind es extra Pins soweit ich weiss.

https://www.elektor.de/elektor-uno-r4

Whandall: Ja.

Serial geht über USB, Serial1 über die Pins 0 und 1, beim Elektor UNO sind es extra Pins soweit ich weiss.

https://www.elektor.de/elektor-uno-r4

wir die dann mit Serial2 angesprochen oder wo kann man das herausfinden?

Ich denke auch mit Serial1, aber auf anderen Pins.

Hallo,

jetzt habt ihr das verkompliziert. Der Elektor R4 hat 2 serielle Schnittstellen. Die heißen Serial*0* und Serial*1*. Wobei man bei der ersten die 0 nicht mitschreibt. Einfach Serial.print usw.

die erste ...... Serial ..... Pin 0/1 ...... USB (hat jeder Arduino) die zweite ... Serial1 ... Pin 11/12 (nur beim Elektor R4)

Doc_Arduino: jetzt habt ihr das verkompliziert. Der Elektor R4 hat 2 serielle Schnittstellen. Die heißen Serial*0* und Serial*1*. Wobei man bei der ersten die 0 nicht mitschreibt. Einfach Serial.print usw.

Also heißt die erste Schnittstelle Serial und nicht Serial0, jetzt versucht du es zu verkomplizieren.

Doc_Arduino: die erste ...... Serial ..... Pin 0/1 ...... USB (hat jeder Arduino)

ok Serial sendet also gleichzeitig über den USB und die beiden Pins PD0 &1, wenn dem so ist wäre das eine Alternative für mein Projekt.

Bei diesem Board kommst du auch an alle Pins und man sollte es unter Arduino zum Laufen bringen können,
meins ist aber noch auf dem Weg.

ATMEGA328PB XMINI AVR ATMEGA328PB Eval Kit € 14,25 bei freiem Versand.
Ich glaube auch fest dass das original ATMEL Ware ist.

XPlained.jpg

Edit: das Foto ist von der P Version, das Produkt ist PB.

Hallo,

ich wollte nur deinen Tippfehler in #9 korrigieren. Serial*1* geht nicht an Pin 0/1. Serial0 geht an Pin 0/1. Wobei man die 0 nicht mitschreibt. Mehr wars nicht.

@ ATamer, lass dich jetzt nicht verwirren, du hast das jetzt richtig verstanden. Aber wie gesagt, pass auf was du an die Pins 0/1 anklemmst, wenn die die serielle Übertragung beim Sketch flashen stören, ist der µC Schrott. Der ist dann nur noch mit einem Programmer zu retten. Am sichersten ist, immer vorm flashen diese beiden Pins abklemmen. Nur wer denkt da immer dran.

Hallo,
hier kannst Du schon sehen, wie es mit den Seriellen Schnittstellen losgeht.
Das bleibt Dir beim Mega erspart.
Der Mega hat eine serielle Schnittstelle die auf Tx0/Rx0 geht.
Serial.begin(9600);
Diese ist auch mit USB verbunden.

Die anderen Schnittstellen sind…

auf Tx1/Rx1
Serial1.begin(9600);

auf Tx2/Rx2
Serial2.begin(9600);

auf Tx3/Rx3
Serial3.begin(9600);

Das sind HardWareSchnittstellen. Kein Ärger mit einer Software.

Die Shield´s, die auf einen Uno passen, passen auch auf einen Mega.
Die haben in diesem Bereich gleiche Pin´s, inkls. SPI

Bei manchen Shield´s kann es optische Probleme geben, weil der USB.Anschluss
des Mega etwas höher liegt. Das Shield sitzt dann etwas schief auf dem Mega.
Das kann man ausgleichen.
Bei so einem Shield sollte man beim Mega die USB-Buchse oben abkleben, weil
es zu einem Kurzschluss kommen kann- kann, nicht muss.
Unter “Products” hier im Forum, kannst DU das alles selbst nachlesen.
Gruß und Spaß
Andreas

Doc_Arduino:
ich wollte nur deinen Tippfehler in #9 korrigieren. Serial1 geht nicht an Pin 0/1. Serial0 geht an Pin 0/1.
Wobei man die 0 nicht mitschreibt. Mehr wars nicht.

Diese Aussage (#9) bezieht sich auf Leonardo und Micro und ist richtig.

Hier noch ein richtiges Bild zu dem ATMEL 328PB Board
XPlainedPB.jpg

hi,

Ein Leonardo oder Micro hat auch eine freie verfügbare Hardware Serial Schnittstelle,

das wurde jetzt nicht weiter verfolgt bzw. noch nicht beantwortet…

lieg’ ich richtig damit, daß USB da vollkommen unabhängig von der “normalen” seriellen schnittstelle ist, weil ja der prozessor selbst eine USB-schnittstelle hat und und deshalb den wandler seriell<>USB garnicht draufhat?

also nicht 2 serielle, sondern eine unabhängige serielle und eine unabhängige USB? mir ist schon klar, das USB auch eine serielle schnittstelle ist, aber halt anderen typs.

gruß stefan