comunicazione RS232

buongiorno
avrei bisogno di uno sketch per leggere da seriale
in pratica: ho un cronometro (sono un cronometristra ufficiale FICR)
che manda delle stringhe sulla rs232 terminate con CR e LF

avrei bisogno all'inizio di vedere queste stringhe intere su serialmonitor
e poi se funziona di metterle su un LCD 20x4 che ho acquistato

qualcuno puo' aiutarmi o darmi una base?
grazie mille a tutti
Maury

Beh di fatto tu vuoi collegare Arduino ad una seriale fisica, ed in prima battuta vuoi che Arduino (do' per scontato che si stia parlando di una UNO) riporti aul Serial Monitor dell'IDE tutto ciò che riceve, esatto?

Se la velocità della RS232 non è elevata e non ci sono protocolli particolari né handhake (l'ideale è il calssico 9600N81), puoi partire da QUESTO esempio di uso di una seriale software.

Qualche ritocco. Togli la "while (!Serial)" che in genere non serve, così come la "mySerial.println("Hello, world?")", modifica la "mySerial.begin(38400);" (38400 è la massima velocità per una SoftwareSerial, ma comunque devi mettere la velocità della TUA seriale), e puoi anche togliere le istruzioni che servono per mandare alla seriale quello che digiti sul monitor (che a te non serve, devi comunicare solo in ricezione):

if (Serial.available())
mySerial.write(Serial.read());

A quel punto inizia a sperimentare e facci sapere.

grazie mille, ci provo
il cronometro cmq e bidirezionale e attende cmq anche dei comandi per impostarsi
dove devo collegare tx tx e gnd in arrivo dal cronometro?

dato che la stringa e lunga come faccio a crearla completa e poi visualizzarla? e terminata da CR e LF
che posso usare per capire che la stringa e finita ma come accodo i vari caratteri?
grazie se mi aiuti con uno sketch....

MauryM:
il cronometro cmq e bidirezionale e attende cmq anche dei comandi per impostarsi

Ah ok, allora lascia quelle ultime due righe.

dove devo collegare tx tx e gnd in arrivo dal cronometro?

Dipende da quali pin usi con la SoftwareSerial. Vai alla pagina che ti ho indicato, trovi tutto scritto, ad esempio:

The circuit:
* RX is digital pin 2 (connect to TX of other device)
* TX is digital pin 3 (connect to RX of other device)

Poi fai gli esperimenti con quel codice, ma intanto studiati un poco come funziona la SoftwareSerial su Arduino (in parte già puoi vederlo dall'esempio stesso).

Ovviamente devi conoscere un poco anche il linguaggio C....

dato che la stringa e lunga come faccio a crearla completa e poi visualizzarla? e terminata da CR e LF che posso usare per capire che la stringa e finita ma come accodo i vari caratteri?
grazie se mi aiuti con uno sketch....

Non è per cattiveria, ma dovresti iniziare tu a scrivere qualcosa, leggi il regolamento, punto 16.1:

16.1
Tenete sempre presente che qui sul forum nessuno scrive software per conto terzi o realizza schemi su ordinazione, ma si aiuta chi viene qui a correggere/ottimizzare il software che lui scrive o gli schemi che lui realizza.
Se non si è mai sviluppato su Arduino, si può cominciare con lo studiarsi QUESTO pdf, leggere QUEST'ALTRO e seguire i link indicati in QUESTO post.

grazie mille
la massa del cavo RS232 a che pin la collego? un ground qualsiasi?

grazie di nuovo

Visto che si tratta di un cronometro con uscita RS232, lo hai messo un adattatore di livello per collegarlo ad Arduino ?

Ti ricordo che la seriale di Arduino lavora con tensioni di 0/5V, la RS232 con tensioni diverse ( a meno che non sia una RS232 TTL )

grazie
che shield mi consigli?
per usare il convertitore servono poi istruzioni dedicate nello sketch?
grazie di tutto

Per esempio una con un MAX232 o simile.

Penso che hai il manuale del cronometro e percui descritta la comunicazione della RS232.

In prima battuta puoi usare un PC un po vecchiotto con una RS232 e veu un programma terminale cosa viene spedito sulla seriale.

Ciao Uwe

uwefed:
Per esempio una con un MAX232 o simile.

esatto, una cosa simile a questo e non servono istruzioni particolari. adatta solo i livelli di tensione