Pages: [1]   Go Down
Author Topic: Letture digitalRead sfasate  (Read 298 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Full Member
***
Karma: 0
Posts: 162
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

So che è il (già) secondo topic di oggi che scrivo, forse inutile, ma non riesco a capacitarmi di questa cosa..

Ho programmato arduino perchè mi restituisca, nella console seriale, il valore del pin 12..
Non c'è niente collegato ad arduino, e lui continua a darmi valori sfasati, continua ad oscillare tra 0 e 1 cosi a caso.. Senza che io lo tocchi..
Come se non bastasse, ovviamente, quando collego 2 cavi (al GND e al pin 12) non capisce quando li unisco e quando sono separati.. mi da sempre 0 e 1 a caso..
Non riesco proprio a capire cosa gli stia succedendo.. magari sono tordo io che sbaglio qualcosa.. boh O_O
Logged

Genova
Offline Offline
Faraday Member
**
Karma: 17
Posts: 2757
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Secondo te senza programma e/o schema cosa dovremmo capire?

Quote
Come se non bastasse, ovviamente, quando collego 2 cavi (al GND e al pin 12) non capisce quando li unisco e quando sono separati.. mi da sempre 0 e 1 a caso..
hai configurato il pin 12 nel setup?
« Last Edit: July 05, 2013, 06:59:55 am by pablos » Logged

Meglio imparare dalle cose inutili piuttosto che non imparare niente.   [Arduino Mega R3 + Ethernet shield W5100 + SD card 8Gb FAT32]

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

Non è che ci sia tanto di programma..

Code:
void setup(){
  Serial.begin(9600);
  pinMode(12,INPUT);
}

void loop(){
Serial.println(digitalRead(12));
  delay(500);
}

Schemi non ce ne sono, visto che non c'è niente di collegato all'arduino.. O al limite c'è un filo che va dal GND al pin 12..
Logged

Genova
Offline Offline
Faraday Member
**
Karma: 17
Posts: 2757
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

bhe allora le cose cambiano .... ti serve un debounce, ma soprattutto una resistenza di pull o UP o DOWN che stabilizzi lo stato 1 o 0... una configurazione come se avessi un pulsante, ma con 2 fili così non avrai segnali molto precisi

http://arduino.cc/en/Tutorial/Debounce

se vuoi chiarimenti sul debounce per ottenere un antirimbalzo o meglio sapere cos'è è perchè hai quegli effetti random http://it.wikipedia.org/wiki/Circuito_anti-rimbalzo
« Last Edit: July 05, 2013, 07:05:52 am by pablos » Logged

Meglio imparare dalle cose inutili piuttosto che non imparare niente.   [Arduino Mega R3 + Ethernet shield W5100 + SD card 8Gb FAT32]

Switzerland
Offline Offline
Faraday Member
**
Karma: 83
Posts: 4260
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

...
Non c'è niente collegato ad arduino, e lui continua a darmi valori sfasati, continua ad oscillare tra 0 e 1 cosi a caso.. Senza che io lo tocchi..
...

Allora, intanto un pin in input lasciato aperto ... data l'alta impedenza e normale che non sia stabile ... comincia quindi ad attivare la resistenza di pull-up interna definendo :

Code:
pinMode(12, INPUT_PULLUP);

e vedrai che a pin aperto starà fermo sul valore HIGH (vd. esempio http://arduino.cc/en/Tutorial/InputPullupSerial).

Poi, per i rimbalzi, segui quello che ti ha scritto Pablos smiley

Guglielmo
« Last Edit: July 05, 2013, 07:05:24 am by gpb01 » Logged

Search is Your friend ... or I am Your enemy !

Tuscany
Offline Offline
Edison Member
*
Karma: 37
Posts: 1487
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e perlomeno una resistenza di Pullup

che o metti esterna o abiliti con il comando

 pinMode(12,INPUT_PULLUP);
Logged

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

Ora devo scappare, me la studio quando torno la PULLUP..

Comunque grazie mille, era proprio questo che sbagliavo.. Me la ricordavo per il pulsante, ma da stupido non mi sono neanche reso conto che alla fine quello che faccio chiudendo il circuito è lo stesso del pulsante smiley-lol

Ora funziona perfettamente.. Grazie ancora!!! smiley-wink
Logged

Pages: [1]   Go Up
Jump to: