Go Down

Topic: Proyecto nuevo con TM1640 Ayuda plz... (Read 3806 times) previous topic - next topic

inigohe

Buenas...

Tras estar rebuscando los numerosos scripts que hay circulando al respecto he encontrado este que se adapta a mis especiales encoders;)

Code: [Select]

#include <Bounce.h>

// This code increments or decrements a counter based on
// the status of a rotaty encoder

#define pin1 5
#define pin2 6
#define LED 13
int counter = 0;

// Instantiate a Bounce object with a 5 millisecond debounce time
// Only pin1 needs to be debounced. It is assumed that pin2
// will be stable when reading pin1
Bounce bouncer1 = Bounce( pin1,6 );

void setup() {
  pinMode(pin1,INPUT);
  pinMode(pin2,INPUT);
  pinMode(LED,OUTPUT);
  Serial.begin(9600);
}

void loop() {
// Update the debouncer
  bouncer1.update ( );

// Turn on or off the LED and
// increment or decrement the counter
if ( bouncer1.risingEdge()) {
   if (digitalRead(pin2)){
     digitalWrite(LED, HIGH );
     counter++;
     Serial.println(counter*10);
   }else{
     counter--;
     Serial.println(counter*10);
   }
} else {
    digitalWrite(LED, LOW );
}

}
A modo de prueba he modificado la asignacion de pines y el bounce lo he pasado a 6 milisegundos... y para hacer incrementos de 10 he multiplcado counter por ese digito...

El resultado...
http://www.youtube.com/watch?v=ZRu4MQbG_Dk&feature=youtu.be

Bueno, ahora a por el script principal a ver si consigo hacerlo sin meter mucho la pata.

Un saludo.

inigohe

Go Up