Oscillazioni segnale analogico (???)

Ciao a tutti,

ho da poco iniziato a giocare con Arduino Duemilanove e mi accade un fatto che non riesco a spiegare: voglio misurare l'intensità della luce con una LDR, ho montato il circuito, ho scritto 2 righe 2 di codice per Arduino:

void setup(){
   Serial.begin(9600); 
 }
 
 void loop(){
   Serial.write(analogRead(4));
  delay(10); 
 }

e leggo il valore con un programmino in Processing che mi disegna una sorta di grafico.
Il fatto è questo: a parità di altre condizioni il segnale letto dallo sketch Processing in arrivo da arduino non è costante ma ha un'oscillazione più o meno regolare (allego un pezzetto di log):

518
515
497
496
501
517
519
516
504
495
497
512
518
518
514
496
....

Non capisco cosa possa essere....

metti una resistenza tra i 5V e l' LDR. Serve per limitare la corrente. che passa attrraverso il fotoresistore (ldr).
In linea di massima quando vedi un segnale analogico flottare (e non dovrebbe farlo) è perchè manca una resistenza a limitare la corrente.
Prova a leggere un porta analogica con niente collegato... ti accorgerai che flotta inspiegabilmente. Se ci metti un resistenza non lo farà più :slight_smile:

Ciao

OOps...C'è un errore nel codice di Arduino:

invece di Serial.write() (metodo che non esiste) va usato Serial.println().

Così è tutto OK.

così non flotta?
è strano che il codice venisse compilato con un errore del genere... :confused: