¿Su software de encuesta de esta entrada, o utilizar una interrupción esquema de proceso?
Si eres de votación, es de suponer que usted lea la entrada a un ritmo mucho mayor que el esperado cambio en la señal. Si el ruido es bien separados, de muy alta frecuencia picos, estos tendría el aspecto aislado de muestras de la "equivocado" de la polaridad. Usted podría mitigar esta manteniendo el más reciente de N muestras y decidir a leer la entrada como lo que la polaridad es en la mayoría. I. e., si N=5, entonces si tiene 3, 4 o 5 '1' bits, su entrada es un '1'; si tienen 0, 1, o 2 '1' bits, su entrada es un '0'. Esto es realmente sólo una especie de filtro de paso bajo en el software.
Si usted está utilizando la entrada para activar las interrupciones en el cambio (ambos extremos), usted puede tener la rutina de interrupción (ISR) iniciar un temporizador para causar una segunda interrupción de un poco tiempo más tarde, pero más que el ruido de tiempo de pico. En lugar de tener el pin de entrada ISR directamente acumular la señal de los bits, usted tiene el temporizador de ISR hacerlo. Por ejemplo, si la señal es baja, y un gran incremento viene, el flanco de subida iniciar el temporizador, pero antes de que la cuenta atrás del tiempo expira, el flanco de bajada de la espiga restablece, por lo que cuando el temporizador de interrupción finalmente se apaga, usted está buscando en la señal, y no el ruido. La señal, por otro lado, se iniciará el temporizador sólo una vez, y el temporizador de ISR será capaz de agarrar el nuevo nivel de la señal.
De estos dos, los Encuestados vs Interrumpir, personalmente me gustaría ir para los encuestados enfoque, b/c (1) las interrupciones son más complicadas, y (2) un patológicamente colocado par de picos podrían dar falsos de entrada.