Go Down

Topic: dubbi su comportamento seriale hardware (Read 508 times) previous topic - next topic

m_ri

bunasera a tutti,
avrei una domanda..se nel codice uso molte serial.print e write,senza però nessuna seriale (o usb) effettivamente collegata,potrei avere qualche comportamento anomalo?

steeveO

Ciao non credo, a meno che non sia necessaria la comunicazione seriale per il funzionamento, tipo trasferimento dati. Se la usi solo per vedere dei risultati sul serial monitor non da alcun problema. Per le read c'è l'apposito "if(availiable>0)" che controlla se la seriale è disponibile per cui tutto ciò che c'è dentro la if non viene eseguito in caso di non collegamento.
La domanda più che altro è : se non ti serve una comunicazione seriale perchè mettere codice inutilizzato su arduino?

m_ri

so come si usa la seriale :)
mah,puoi avere un arduino che fa il suo lavoro,e ogni tanto vorresti poter connettere il pc per vedere se va tutto bene..evitando di resettare la seriale o ricaricare sketch..
facevo la domanda perchè,se la memoria mi inganna,tempo fa su qualche topic s'era detto che continuare a stampare su una seriale inutilizzata causava blocchi o reset(non mi ricordo)..
se qualcuno di esperto sapesse rispondermi..

leo72

La seriale sull'Arduino è gestita tramite un buffer di 64 byte. Se "stampi" sulla seriale in realtà metti i byte dei dati in questo vuffer, da cui poi un interrupt li preleva per spedirli. Ovviamente se la seriale HW non è materialmente collegata, il buffer si riempie ed i dati nuovi sovrascrivono i vecchi.
Inoltre, se non interrompi il jumperino RES-EN presente sulla scheda, non appena colleghi l'Arduino al PC ed apri la seriale, la scheda si resetta.

m_ri

grazie per la risposta  :D
quindi il buffer si riempie e poi si svota,non impalla niente..
sai come fa il buffer ad accorgersi se c'è qualcosa di materialmente connesso?cioè,fuori dall'arduino ho rx e tx..riceve un ack dall'rx dopo ogni invio?

cyberhs

In arduino la seriale non ha alcun protocollo di comunicazione, né Xon/Xoff, né Ack/Nack

Go Up