¿Interrupción de cambio de pin ATtiny45 PB5?

En las hojas de datos de ATTiny45 se indica que PB5 se puede usar como un pin de E/S digital y quiero usarlo para activar una interrupción de cambio de pin, mi único problema es que también es el pin de reinicio y en el momento en que lo conecto a tierra para intente y active una interrupción, restablece el ATTiny. ¿Es posible usar este pin para interrupciones y, de ser así, cómo?

Hay un RSTDISBLfusible para echar un vistazo, pero algunas advertencias que alguien probablemente pueda señalar.
Realmente no quiero renunciar al ISP, ¿me veré obligado a hacerlo?
@German: Sí. Pero hay circuitos muy simples para volver a habilitar nRESET. O haciendo HVSP.

Respuestas (1)

Hasta que revisé la hoja de datos de ATtiny45 hoy, estaba convencido de que no se puede programar el AVR después de programar RSTDSBL en Fuse High Byte. Pero luego me topé con esta nota en la Tabla 6-7 Tiempos de inicio para el reloj oscilador RC calibrado interno"

Nota: 1. Si se programa el fusible RSTDISBL, este tiempo de inicio se incrementará a 14CK + 4 ms para garantizar que se pueda ingresar al modo de programación .

Ahora no menciona a qué modo de programación se refiere, ya sea Alto Voltaje o SPI. Entonces , si su programador lo admite, es posible que pueda ingresar al modo de programación dentro de los 4 ms después del encendido, en lugar de usar el " REINICIAR ¯ -protocolo de línea" (no sé el nombre correcto). Incluso debería poder verificar esto sin programar el fusible RSTDISBL, y simplemente programando los tiempos de inicio (SUT [1: 0] en Fuse Low Byte) para el oscilador RC interno.

El Capítulo 20 en la página 147 y en adelante explica varios modos de programación de los dispositivos, pero no menciona el fusible RSTDISBL. Parece que necesita prueba y error para estar 100% seguro...

Personalmente, uso Arduino para programar AVR de ISP y supongo que uno debería poder piratear el boceto ArduinoISP para encender el AVR e iniciar el protocolo de enlace de programación dentro de los 4 ms después de eso. Pero nunca lo probé yo mismo.

Por supuesto, puede restablecer los fusibles de su controlador usando un programador de alto voltaje como el AVR Dragon . (Aparentemente, Dragon no puede reiniciar el dispositivo de destino, por lo que Dragon no admitirá la programación sin utilizar el REINICIAR ¯ -línea). Por otro lado, Dragon admite la programación HV, lo que resuelve su problema de cualquier manera.

O podría improvisar un programador HV para restablecer los fusibles predeterminados.

Sí, ese es el programador que usé. Excepto que eliminé toda la interactividad y la puse en un ATtiny2313. Aplique energía, nRESET está habilitado.