Ho bisogno di implementare una comunicazione 485 ( ho comprato l'adattatore) alla velocità di 115 200 baud, e fin qui nessun problema, ma con un bit di stop e il bit di parità dispari.
Come faccio a settare il bit di stop e la disparità con la libreria software serial?
Sto usando arduino UNO e programmo con l'ultima versione di arduino.
Ho idea che devi prendere una scheda con più VERE seriali HW ... come ad esempio Arduino MEGA.
La SoftwareSerial (e altre librerie simili) NON prevede la gestione della parità e, peggio, da test effettuati da vari utenti, oltre i 38400 ha un tasso di errore totalmente inaccettabile ... figurati a 115Kbps.
ok allora posso usare un'arduino due con le porte reali. Ma come si fa a settare i bit di parità/disparità, e lo stop bit? quale libreria devo usare allora?
Sandroelec:
ok allora posso usare un'arduino due con le porte reali. Ma come si fa a settare i bit di parità/disparità, e lo stop bit?
Usi la normale classe Serial (... e, ovviamnete, per le varie porte, Serial1, Serial2, Serial3, come descritto nel reference della DUE) e ... prova a studiarti la Serial.begin()
Serial se usi la seriale classica (pin 0 e 1), le altre, se LEGGI il reference, si chiamano Serial1 (pin 19 e 18), Serial2 (pin 17 e 16) e Serial3 (pin 15 e 14) !
si ho letto chiedevo solo conferma e non ho inserito il numero della porta. Sicuramente userò dalla 1 alla 3 per avere libera quella che comunica con il pc.
Grazie ancora buona giornata!
Mi raccomando, ricordati (... per il collegamento con l'adattatore RS485 che hai preso) che la DUE lavora a 3.3V e tensioni superiori danneggiano i pin della MCU, quindi ... verifica
ho pensato di utilizzare la porta Ho realizzato un piccolo sketch
void setup(){
SerialUSB.begin(115200);
}
void loop(){
SerialUSB.print("TEST");
delay(1000);
}
volevo provare a scrivere un valore e leggerlo sulla usb del mio pc con Putty.
Non riesco a leggere niente però e non mi riconosce la porta, non parte nessuna installazione di driver.
Immaginando fosse un proble di di driver ho provato anche a collegare i due pin RX e Tx nel mio arduino uno, realizzare un software che legge e riscrive sulla seriale col pc ma nulla.
suggerimenti? hai mai usato la USB di arduino due?
poi in realtà c'è il problema che ho bisogno del monitor seriale per passare i dati dall'arduino alla UDOO.
Per questo consideravo occupata la porta per programmare.
Se fai una ricerca per "arduino due using native usb port" troverai vari thread che parlano della cosa ...
... uno, ad esempio è QUESTO, ma ce ne sono svariati altri che spiegano l'uso.