Tengo lo que espero sea una pregunta simple relacionada con los microcontroladores Atmel AVR. Así que quiero usar el Comparador Analógico del ATTiny85 para determinar si una señal está por encima o por debajo de un umbral. Esta señal es normalmente "flotante" y tirada hacia el suelo cuando está "activa" (es decir, es una señal de colector activa de baja apertura). Si habilito el pull-up en el pin de entrada (que es también la entrada del comparador) haciendo:AVR Analog Comparator + Internal Pullup?
DDRB = 0x00; // DDRB.1 = 0 = input
PORTB = 0xFF; // PORTB.1 = 1 = internal pullup enabled
si uso el comparador analógico y seleccione PORTB.1 como AIN1 será el pull-up interno se aplicaran a mi señal de entrada ? Espero que alguien tenga experiencia personal para verificar este comportamiento. Espero que esta pregunta no esté demasiado orientada al hardware para el desbordamiento de la pila. ¡Gracias!
EDITAR En respuesta a algunas de las observaciones siguientes para el efecto de "¿por qué no tratar digitially", que se debe a mi "señal" es generada por un sensor (es decir, un sensor óptico IR). No puedo estar seguro de que se desplegará "lo suficientemente fuerte" como para ser interpretado como cero digitalmente, por lo que voy a utilizar la referencia interna de 2.56 V como mi umbral de conmutación. Solo intento recoger el "evento IR", así que esta me pareció la forma más sencilla.
Además, al usar el comparador analógico, puedo detectar el evento "asincrónicamente" usando un ISR. De acuerdo, algunos de los pines pueden invocar una interrupción en un borde digital, pero uno no quiere confiar en la respuesta para sumergir por debajo de V_IL.
+1 para dirigirlo a la hoja de datos; siempre el primer lugar para mirar. – Clifford
Sí, eso es lo que pensé, ¡gracias! – vicatcu
Desafortunadamente, acepté esta respuesta antes de probarla. Resulta (a pesar de la inferencia de la hoja de datos) que el pullup * interno * debe estar desactivado para poder utilizar un pin como entrada al comparador analógico. – vicatcu