Go Down

Topic: [RISOLTO] Problema con pin input arduino ADK (Read 513 times) previous topic - next topic

peppe123

Nov 24, 2012, 10:49 am Last Edit: Nov 24, 2012, 11:44 am by peppe123 Reason: 1
Ciao ragazzi
mi succede una cosa strana quando cerco di realizzare questo collegamento http://linuxmx.it/forum/viewtopic.php?f=16&t=721
in pratica l'incremento di un valore mediante pulsante con resistenza da 10k in pull-down, se controllo con il tester è tutto ok, cioe' ho i 5v solo quando schiaccio il pulsante, ma quando collego i pin ad arduio, l'icremento dei valori sul menu del mio lcd parte a faffica come se ricevesse sempre e costantemente il valore high. cosa potrebbe essere?
ho provato anche a collegare ad altri pin di arduino ma è sempre lo stesso risultato.


lo sketch che uso è il seguente:

// include the library code:
#include <LiquidCrystalFast.h>

// initialize the library with the numbers of the interface pins
LiquidCrystalFast lcd(23, 25, 27, 29, 31, 33, 35, 37);
        // LCD pins: RS RW  E1  E2 D4 D5 D6 D7

int in=7;
int in2=8;


int a = 0;
int b = 0;
int c= 0;
int d = 0;


void setup() {
 pinMode(in,INPUT);
 lcd.begin(16, 2);
 lcd.print(" www.linuxmx.it ");
 delay(3000); lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Valori:");
 lcd.setCursor(0, 1);
 lcd.print("P1=");
 lcd.setCursor(10, 1);
 lcd.print("P2=");  
}

void loop() {

 c=digitalRead(in);
 if ( c== 1){b=b+1; delay(500);}
 d=digitalRead(in2);
 if ( d== 1){a=a+1;delay(500);}

 
 lcd.setCursor(4, 1);
 lcd.print(a);
 lcd.setCursor(14, 1);  
 lcd.print(b);  
 
}

questa è la foto del collegamento:


Uploaded with ImageShack.us

uwefed

Le resistenze sulla basetta sono collegata a +5V percui pullup non pulldown.
Quando premi il pulsante il pin va a LOW non a HIGH.
Ciao Uwe

tonid

A me sinceramente sembra che le resistenze le hai collegate in pull-up.
Controlla bene ma dalla foto mi pare di capire che un capo della resistenza vada a +5,l'altro capo va al pulsante ed all'ingresso analogico di arduino,il restante pin del pulsante va a gnd.......se ho visto bene hai collegato la resistenza in pull-up e non in pull-down.

peppe123

Risolto... Grazie mille ragazzi  :)
avevo preso il link della guida che parlava di pull down ma di fatto riporta a wikipedia che parla invece di un collegamento pull up.. mi sono fiondato subito sulla foto senza leggere prima.

posso aprofittare per chiedervi dove poter trovare materiale per creare un menu e sottomenu utilizzando 6 pulsanti:
up, down, left, right, enter, esc

Grazie ancora

Go Up