Go Down

Topic: problema con interrupciones [Solucionado] (Read 1 time) previous topic - next topic

pt_t

Jan 04, 2013, 02:46 am Last Edit: Jan 04, 2013, 09:29 am by pt_t Reason: 1
hola  soy nuevo con arduino  y estoy teniendo un problemita con las interrupciones, ahi les va por quien guste ayudarme.....

bueno resulta que estoy probando este codigo

int pin=10;
volatile int state =LOW;

void setup()
{
 pinMode(pin, OUTPUT);
 attachInterrupt(0, blink, RISING);
}

void loop()
{
 digitalWrite(pin, state);
}

void blink()
{
 state = !state;
}
}

Mi duda es la interrupcion se activa cuando al pin 2 es mandado a tierra , por que eso es lo que me esta pasando, en lugar de cambiar cuando va de 0 a 5 volts, por cierto estoy usando un arduinomega

Gracias

Heke

#1
Jan 04, 2013, 07:34 am Last Edit: Jan 04, 2013, 07:39 am by Heke Reason: 1
Mirate como se emplean las interrupciones:

Code: [Select]
* attachInterrupt(A, B, C)
* A   can be either 0 or 1 for interrupts on pin 2 or 3.
*
* B   Name of a function you want to execute while
* in interrupt A.
*
* C   Trigger mode of the interrupt pin. can be:
*             LOW         a low level trigger
*             CHANGE    a change in level trigger
*             RISING       a rising edge of a level trigger
*             FALLING     a falling edge of a level trigger
*
* In all but the IDLE sleep modes only LOW can be used.



Yo la empleo p.ej. asi:
    attachInterrupt(0, enciende, CHANGE);

Siendo "enciende" la funcion a la que llamo y que ademas no contenga ningun delay.

Por cierto, asegurate de poner las resistencias de pull en up o down para que no hayan interferencias.

Un saludo.

pt_t

perdon mi ignorancia pero cuales son las resistencias de pull  :smiley-eek: .....  y cambie el nombre de la funcion a disparar pero lo que me hace esque conecto un cable en el pin de la interrupcion y cambia de estado el led , aunque el otro extremo no este conectado a nada :S tal vez es por lo que dices ...


Gracias

Heke

#3
Jan 04, 2013, 08:44 am Last Edit: Jan 04, 2013, 08:48 am by Heke Reason: 1
Son para asegurar que las entradas necesiten una corriente minima y no se alteren por la tension inducida a modo de antena.

Leete este enlace:
http://arduino.cc/es/Tutorial/DigitalPins

Y este:
http://www.arduteka.com/2011/11/tutorial-0002-controlando-entradas-y-salidas-digitales/

sino, una busqueda google por resistencias pull up o pull down + arduino y veras...

Un saludo.




pt_t

Tienes toda la razon Muchisimas gracias ¡¡¡ :)

Go Up