Go Down

Topic: [RISOLTO] Problema con pin input arduino ADK (Read 546 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
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy