Hola buen día, tengo un problema con las entradas de mi arduino.
Estoy utilizando el pin 2 o 3 del Arduino UNO para leer una señal que me manda un monedero cada vez que se inserta una moneda(dependiendo de la moneda mandara un número distinto de pulsos así la de 0.25ctv un pulso, 0.50 dos pulsos, etc ).
Utilizo interrupciones para esto, ademas de una resistencia pullup para evitar erores de lectura, sin embargo la entrada del Arduino sigue siendo demasiado sensible a tal punto que actua como antena, es decir si prendo y apago una lampara cerca del arduino, el arduino lee como un pulso o varios (de 1 hasta 100 pulsos de golpe) este le interpreta como una señal del monedero.
He intentado declarar a mi entrada como INPUT_PULLUP, y la resistencia pullup a parte pero nada, el problema no es del monedero pues le desconecto dejando unicaminte el cable y sigo con el mismo problema, es como si en cable se comporta como una antena senible a señales electromagneticas.
Si desconecto el cable que tiene que ir al monedero incluso sin connectale al monedero es decir unicamente un cable algo largo de 15 cm que sale del pin 2 ya no me lee ningun pulso al prende la lampara, pero al conectar cuanquie cable de mas de 5cm al pin 2 ya hace como antena.
El para aislar todo la alimentación del arduino es a travez de una computadora y la del monedero a travez de una bateria de 12v.
Aunque el proyecto es mas complejo he reducido el codigo y el esquema para visualizar unicamente el problema que comento aqui adjunto ambos.
Agradesco a quien me pueda ayudar.
volatile int cont_monedero=0;
#define mon 2
void setup() {
pinMode(mon,INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(mon),Moneda,RISING);
Serial.begin(9600);
}
void loop() {
Serial.println(cont_monedero);
/*al visualizar en el monitor serial le numero de pulsos que tengo
el prender una lampara o algo que este en mi
*/
}
void Moneda()
{
cont_monedero++;
}
