Pages: [1]   Go Down
Author Topic: Mega 2560 und Pollin RS-232-TTL  (Read 1036 times)
0 Members and 1 Guest are viewing this topic.
Hamburg
Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

der Mega 2560  hat ja 4 UARTs , so wollte ich dann einen RS-232 - TTL Baustein von Pollin -> http://www.pollin.de/shop/dt/MzY5OTgxOTk-/Bausaetze_Module/Bausaetze/RS232_TTL_Wandler_Bausatz.html an Serial1 anschliessen.
Vom Pollin Board Port TX an Mega PIN 19 (RX1)  und Pollin RX an Mega PIN18 (TX1) angeschlossen .

Serial1.Begin(9600);

Ich habe diverse Scripte versucht, aber schon bei Serial1.Available (..) bekomme ich immer 0 bytes geliefert.. Das an der Serial1 angeschlossene Gerät ist ebenfalls auf 9k6 initialisiert und liefert Daten..

Habe ich das richtig verstanden , das RX/TX über kreuz verdrahtet wird ?  Ich habe auch mit "SoftwareSerial" an den Digital PINS des Mega's versucht, ebenso ohne Erfolg..

Hat jemand eine Idee oder bin ich mit dem Pollin Wandler auf dem Holzweg ?

Danke für Eure Hilfe

Gruß
DF4XX

Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 264
Posts: 21614
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hast Du die Massen und 5V verbunden?
Grüße Uwe
Logged

Hamburg
Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo Uwe,

der RS-232 von Pollin hat +5V und Masse vom Mega board bekommen..
Werden die Anschlüsse gekreuzt, so wie oben beschrieben ?

Gruß
DF4XX - Kurt smiley
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 264
Posts: 21614
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Die Verdratung müßte richtig sein.
Wenn Du nur GND und 5V am Modul anschließt und RX mal auf GND und dann auf 5V anschließt welche Spannung hast Du an Pin 2 des RS232-Steckers?
http://www.pollin.de/shop/downloads/D810036B.PDF
Grüße Uwe
Logged

Germany S-H
Offline Offline
Faraday Member
**
Karma: 146
Posts: 3032
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hat jemand eine Idee oder bin ich mit dem Pollin Wandler auf dem Holzweg ?

http://de.wikipedia.org/wiki/Datenflusssteuerung

Wenn es am angeschlossenen Gerät (um was für eines geht es eigentlich?) eine Konfigurationsmöglichkeit gibt, probiere dort mal die Einstellung "No Handshake" zu konfigurieren, wenn Du an Deiner Schnittstelle keine Handshake-Signale auswertest und zur Verfügung stellst.

Wenn das angeschlossene Gerät ein Hardware-Handshaking erwartet, das auch per Konfiguration nicht abschaltbar ist, kannst Du beispielsweise ein Auto-Handshake verdrahten.


Logged

Hamburg
Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

das angeschlossene Gerät ist ein Amateurfunk Transceiver von Kenwood - TS-590 . Über die COM Schnittstelle möchte ich die aktuell eingestellte Sendefrequenz auslesen, um damit eine Relais Steuerung anzutriggern, für die passende Antenne.

Am TS-590 kann man nur die COM Speed einstellen.. Bei mir auf 9600 . Baudrate 8N1 . DTR/RTS ist nicht einstellbar.

Logged

Hamburg, Germany
Offline Offline
Sr. Member
****
Karma: 6
Posts: 291
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ich habe zwar länger nichts mehr mit dem MAX232 gemacht, aber die Pinbelegung müsste folgende sein:

Arduino RX (Pin 0) -> MAX232 Pin12
Arduino TX (Pin 1) -> MAX232 Pin11
Sub9 RX (Pin 2) -> MAX232 Pin14
Sub9 TX (Pin 3) -> Max232 Pin 13

Zum Testen empfiehlt sich auf beiden Seiten ein loopback-Test. Also bei angeschlossenem Arduino an Pin 12/11 vom MAX232 dort Pin 13 und 14 Verbinden und entsprechend auf der Gegenseite.

Imho waren die (richtigen) Kondensatoren am MAX232 nicht ganz unwichtig und natürlich die gemeinsame Masseverbindung (Pin5 SUB-D, MAX232 und GND vom Arduino).

EDIT: Ich habe gerade gesehen, Du hast einen MEGA - also die Pins entsprechend anpassen smiley-wink

Hilfreich ist evtl. auch Seite 17 vom MAX232 Datenblatt.
« Last Edit: December 20, 2012, 02:24:04 am by markbee » Logged


Offline Offline
Full Member
***
Karma: 0
Posts: 194
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo DF4XX,
ähnliches Problem hatte ich auch gehabt, da mein Receiver sich nicht an die Norm hielt. Es sieht so aus, dass bei dir unter Terminal Descriptions der COM Schnittstelle die Pins folgendermaßen belegt
sind. PIN2  RXD Transmit data und PIN3  TX Receive data (diese Bezeichnung habe ich aus der Gerätebeschreibung entnommen). Wenn das so sein sollte, dann wird das V24-Kabel nicht gekreuzt, also nur als Null-Modem-Kabel verwenden. Ich habe es nicht ausprobiert, da ich den MacDoppler für Satelliten- Verfolgung verwende. Hier wird noch zusätzlich die CI-V Adresse benötigt, die vom Gerät abhängig ist.

Gruß Gerd
« Last Edit: December 20, 2012, 03:12:16 am by COOL » Logged

Germany S-H
Offline Offline
Faraday Member
**
Karma: 146
Posts: 3032
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Am TS-590 kann man nur die COM Speed einstellen.. Bei mir auf 9600 . Baudrate 8N1 . DTR/RTS ist nicht einstellbar.

Wenn das anzuschliessende Gerät ein Hardware-Handshaking standardmäßig erwartet, das nicht in seiner Konfiguration abschaltbar ist, dann mußt Du dem Gerät auch die passenden Signale auf den Handshake-Leitungen anbieten.

Zwei Leitungen für eine Art des Hardware-Handshake sind auf Deinem Pollin-Modul herausgeführt, an Jumperblock J3 mit den Bezeichnungen CTS/RTS.

Teste mal, ob beim Anschließen Deines Transceivers die RTS-Leitung am Baustein HIGH geht.

Ja?
Dann probiere mal folgendes: Setze an J3 eine Kurzschlussbrücke zwischen CTS und RTS und biete damit ein CTS/RTS Auto-Handshake an.

Wenn das Gerät diese Handshake-Leitungen nutzt, dann fragt es seine Sendeerlaubnis auf der RTS-Leitung an, indem es die RTS (Request to Send) Leitung "High" setzt. Dein Gerät sollte daraufhin mit dem High-Setzen der CTS ("Clear to send") Leitung reagieren und dem Gerät mitteilen, dass es bereit ist, die Sendung zu empfangen. Indem Du einfach eine Kurzschlussbrücke zwischen RTS und CTS setzte, leitest Du einfach die RTS-Anfrage auf das anfragende Gerät zurück, das Gerät erteilt sich damit selbst die Freigabe zum Senden und fängt an zu senden.  Wenn es das RTS/CTS Handshake verwendet.

Einen Versuch wäre es wert.

Die zweite mögliche Art des Hardware-Handshake wäre das DSR/DTR Handshaking. "Data Set Ready" und "Data Terminal Ready". Das wären Leitungen, die Dein Max-Baustein überhaupt nicht bedient und da müßtest Du dann direkt am Kabel schon vor dem Max-Baustein die SubD-Steckerpins 4 und 6 (bei einem 9-poligen Kabel) miteinander verbinden, um das Auto-Handshake zu simulieren.

Logged

Hamburg
Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

nun läuft die externe serielle Schnittestelle .. Ursache : Wenn die Hardware defekt ist, kanns nicht gehen..

Habe den RS232 Wandler auf Verdacht gegen einen neuen ausgetauscht ( hatte noch einen Bausatz liegen und heute zusammengelötet )

Angeschlossen, Sketch geladen und schon maschieren die Bits & Bytes zwischen den seriellen Schnittstellen..

 smiley smiley

Danke an allen, die versucht haben zu helfen

Schönen 2. xmas Abend

DF4XX
Logged

Pages: [1]   Go Up
Jump to: