Pages: [1] 2 3 ... 7   Go Down
Author Topic: Leggere e memorizzare dati da RS232 con Arduino Mega 2560  (Read 5518 times)
0 Members and 1 Guest are viewing this topic.
Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Salve a tutti,
ho la necessità di leggere delle stringhe ascii in ingresso con arduino e salvarli su una SD.
Conosco il protocollo e la codifica della stringa ascii che mi esce da uno strumento tramite uscita RS232 e volevo ingressarla in arduino, stamparla a serial monitor e salvarla su SD.
Il mio problema è che, ho letto che il segnale dell'RS232 deve essere convertito in TTL, e per questo potrei usare un MAX232 ma, ho visto diversi schemi di collegamento, e ho una confusione pazzesca. Quali sono i giusti collegamenti tra D9 -> max232 -> pin arduino mega 2560?
Il 99% degli schemi che ho trovato in rete servono a collegare una D9 femmina, quindi l'uscita da arduino, a me serve l'ingresso, quindi una D9 maschio.
Qualcuno mi potrebbe aiutare?
Grazie
Alberto


* DSC00056.JPG (805.06 KB, 1920x1080 - viewed 36 times.)
« Last Edit: May 17, 2012, 07:59:47 am by 9six4 » Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5784
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

non c'e' differenza tra il discorso maschio-femmina-direzione

Di base calcola che devi mettere il TX di chi spedisce all'RX di chi riceve, e viceversa
Essendoci di mezzo un convertitore potresti dover fare due volte lo stesso giro, incasinando il cervello  smiley

Ma per fortuna non essedoci probelmi elettrici nell'inversione dei segnali puoi fare tutte le prove che vuoi, quindi inverti i segnali e vedi quando ti funziona.

cosa usi lato arduino ? puoi fare in tanti modi, un modo carino e' attaccare un lcd ad arduino e caricare uno sketch che faccia da terminale.
in questo modo leggerai sull'lcd il valore dello strumento
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

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

Quindi potrebbe andarmi bene anche questa guida?

http://imageshack.us/f/28/finalmax232.png/

Quote
cosa usi lato arduino ?

Ora, usando arduino mega, sto provanto a far entrare i dati su Serial1 e visualizzarli con Serial.print() però al momento non sono riuscito a far nulla.
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5784
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si questo va benissimo,
e' fatto bene perche' sfrutta anche il pin 4 della 232 per resettare arduino.

Lato connettore SV2 ti metterai su pin 0 e pin 1 di arduino, per il segnale di reset, prima di entrare su pin RESET di arduino, mettici in serie un C poliestere da 100nF
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

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

Perfetto grazie,
per le prime prove vorrei basarmi su questo tutorial, per te va bene?

http://arduino.cc/en/Tutorial/MultiSerialMega
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5784
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

yes, pero' secondo me sono invertite le connessioni, se guardi c'e' tx con tx ed rx con rx, anche l'ìarduinoteam puo' sbagliare
tu ricorda che puoi invertire senza prblemi  smiley fai le tue prove
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

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

Ho visto  smiley-lol, provo e ti faccio sapere,
grazie mille intanto!
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5784
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

 "Uno è lieto di poter servire"  smiley
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

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

L'uomo bicentenario  smiley
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5784
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

grande  smiley
come vanno i test ?
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

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

Mi son dimenticato il max232 e l'arduino in ufficio... questo weekend riposo  smiley-lol
Domani mattina mi metto sotto
Logged

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

Stamattina ho provato, mi sono fatto un circuitino come quello riportato nello schema di cui ho postato il link... niente da fare, non ho alcuna visualizzazione a serial monitor.

Code:
void setup() {
  // initialize both serial ports:
  Serial.begin(1200);
  Serial1.begin(1200);
}

void loop() {
  // read from port 1, send to port 0:
  if (Serial1.available()) {
    int inByte = Serial1.read();
    Serial.write(inByte);
  }
}

Ho usato questo sketch (il mio strumento ha un baud rate di 1200), leggendo le tensioni su Tx ed Rx in uscita dallo strumento ho rispettivamente 3,5V e 2,8 V mentre in ingresso ad Arduino ho sia su Tx che su Rx 4,5V. Mi aspetto però un andamento alternato, il mio strumento mi butta fuori un segnale ogni secondo, ma niente, la cosa sembra essere continua. Cosa posso aver sbagliato? Dello schema http://imageshack.us/photo/my-images/28/finalmax232.png/ ho eliminato solo il  condensatore C1 perché mi metteva in corto 5V e GND... in teoria non ho corti e come alimentazione 8V ho messo la classica batteria da 9V. Heeeeelp  smiley-confuse
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5784
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

spetta spetta
ma non devi mettere nessuna batteria, il chargepump e' fatto internamente, lo schema che hai seguito voleva forse utilizzare quella tensione anche per altro, ma nel gtuo caso non serve.
devi solo montare tutti i condensatori, anche il C1 (i condensatori non mettono in corto l'alimentazione, se lo fa e' in perdita)

Potrebbe essere rotto anche il chip a questo punto.
riprova  smiley
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

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

Riprovato, continua a darmi corto tra 5V e GND. Ho cambiato anche il max232 per sicurezza ma non cambia la situazione. Ovviamente il tutto con batteria staccata.
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5784
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

che intendi per darti corto ? senza alimentazione misuri zero Ohm ? tra il pin+5V e GND ?
inizia a postare delle foto
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Pages: [1] 2 3 ... 7   Go Up
Jump to: