Pages: [1]   Go Down
Author Topic: comunicare con il PC?  (Read 1319 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao,

mi sto interessando a questo mondo stimolante, e ho preso da poco un arduino UNO e qualche piccolo accessorio per fare i primi passi.

Mi chiedo però una cosa molto importante per il prossimo futuro:
Arduino è un HW a senso unico: scrivo gli sketch e li esporto sulla memoria di arduino.
Il processore farà il lavoro descritto.
Però... ad un certo punto nascerà la necessità di intercomunicare con il PC e arduino: leggere i valori degli I/O digitali/analogici.
Perciò la domanda: come posso fare ciò? Come posso collegare arduino al/ad un PC?


un saluto, grazie!
Logged

Global Moderator
Milano, Italy
Offline Offline
Edison Member
*****
Karma: 19
Posts: 1175
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

La risposta è semplicissima, il microcontrollore montato su arduino ha una porta UART, che in pratica ti abilita la comunicazione seriale (con cui tra l'altro viene programmato). La comunicazione è bidirezionale, tant'è che con la classe Serial e relativi metodi puoi interfacciarti e parlare col tuo PC.

Ti consiglio di curiosare nelle sezioni Learning e Reference del sito di Arduino per accrescere le tue conoscenze  smiley-wink
Logged

F

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

in effetti avevo letto/visto di una seriale autocostruita questi gg, e ok. allora è così che funziona.

mitico! vado a curiosare nelle sezioni Learning e Reference


grazie
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 129
Posts: 9446
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non devi autocostruire nulla, basta che colleghi il cavo USB ad Arduino e puoi dialogare con lui tramite la seriale, per esempio se nell'IDE clicchi su "serial monitor" (ultima icona a destra) ti si apre un semplice terminale che ti permette di leggere e inviare messaggi ad Arduino.
Per capire come funziona la cosa puoi usare lo sketch "ascii table" presente negli esempi che ti invia sulla seriale tutta la tabella ascii.
Sempre tramite la seriale USB puoi dialogare con Arduino da un tuo programma applicativo per pc dato che la connessione viene vista come una normale porta seriale anche se di tipo virtuale, unica limitazione è che non devi collegare nulla ai pin Tx e Rx di Arduino altrimenti perdi la comunicazione seriale tramite USB, oltre a non riuscire più a programmarlo.
Logged

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

ah ok..

perchè io avevo visto questo: http://www.arduino.cc/en/Tutorial/ArduinoSoftwareRS232


allora è così: si leggono i vari valori direttamente dalla seriale EMULATA via USB.


Logged

Global Moderator
Milano, Italy
Offline Offline
Edison Member
*****
Karma: 19
Posts: 1175
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@ astrobeed:
Quote
oltre a non riuscire più a programmarlo.

Se con "più" intendi "mai più", questa cosa è sbagliata perchè il PC non riesce a trovare la comunicazione con Arduino solo momentaneamente, cioè solo finché i pin digitali 0 e 1 sono occupati da un qualche altro collegamento esterno. Basta scollegare ciò che c'era collegato ai due pin per ristabilire un collegamento funzionante col PC. Senza alcun danneggiamento.

@cagnaluia: la seriale su Arduino è fisica (è una UART), il chip FTDI (su Duemilanove) o l'atmega8u2 (su Uno) si occupano di adattare la comunicazione UART a quella USB, pertanto non preoccuparti tanto di come puoi interfacciarti col PC, hai già tutti a disposizione, ad esempio, ogni volta che scrivi Serial.print("qualcosa");
Il tuo arduino sta mandando delle informazioni verso il PC. Il "qualcosa" sta a te deciderlo! Comunque se ti guardi un po' di esempi capirai molto di più smiley-wink
Logged

F

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 129
Posts: 9446
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Se con "più" intendi "mai più", questa cosa è sbagliata perchè il PC non riesce a trovare la comunicazione con Arduino solo momentaneamente, cioè solo finché i pin digitali 0 e 1 sono occupati da un qualche altro collegamento esterno.

Ovviamente intendevo che non riesci a programmare Arduino fino a che Tx e Rx sono impegnati da un utilizzatore esterno.
Logged

Pages: [1]   Go Up
Jump to: