Buenos días,
He creado este post en la sección de harware por si el problema que detallo a continuación se pudiera resolver por esa vía. También lo creo aquí por si se puede resolver mediante vía software (o combinación de ambas).
El caso es que tengo un circutio-contador bastante sencillo pero que me está dando un pequeño problema.
He usado el siguiente sensor IR: http://www.electronicaestudio.com/docs/SHT-015d.pdf
cuya salida la he conectado a una R=10K pull-up. El problema que tengo es que me da "falsas lecturas" en ocasiones. He estado leyendo que puede ser debido al efecto rebote.
¿Alguien me puede decir como eliminar ese efecto rebote? Lo he intentado hacer mediante software usando un delay de 500ms tras cada lectura y parece que ha mejorado bastante pero no me puedo permitir que falle en ocasiones.
Os dejo la parte del código:
void loop()
{
lectura = digitalRead(pinsensor);
if (lectura != 1)
{
contador=contador+1;
printN(contador);
delay(500); //AÑADIDO PARA REDUCIR EL EFECTO REBOTE
while(digitalRead(pinsensor) != 1)
{}
}
Gracias de antemano.
Saludos