Go Down

Topic: Misurare durata impulso! uso interrupt (Read 1 time) previous topic - next topic

drinu

#5
Jan 10, 2013, 11:37 pm Last Edit: Jan 10, 2013, 11:47 pm by drinu Reason: 1
pulseIn è la funzione perfetta che cercavo!
Ho provato ma non ci riesco, dovrei misurare non il primo impulso ma il secondo

pablos

pulsein blocca l'esecuzione del codice finchè non ottiene un nuovo impulso, se è quello che ti serve allora va bene così

ciao
no comment

drinu

Bene! Grazie dell'aiuto
Ho anche l'esigenza di dover misurare il secondo o il terzo impulso,eccetera.
Ho fatto :

void loop()
{
  if (cont == 0) {
  duration = pulseIn(pin, HIGH, 2000000);
  lcd.print("us:");
  lcd.print(duration);
  cont = 1;
  if (cont == 1) {
  duration2 = pulseIn(pin, HIGH, 2000000);
  lcd.print("us:");
  lcd.print(duration2);
  cont = 2; 
  }
  }
}


lesto

Togli il secondo if e il suo codice, poi al posto del primo if fai cont++  e cont la dichiari globale inizializzare a 0
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

drinu

Ottimo! Ho imparato qualcosa di nuovo e fatto un passo avanti!
Grazie a tutti!

Go Up