¿Cuántas interrupciones externas tiene attiny85?

2

El título es bastante autodescriptivo. Hago esta pregunta porque encontré información contradictoria en la página web de la atmel. Necesito dos interrupciones externas para controlar un codificador rotatorio. Uno interrumpe los pulsos de control de un pin (ambos suben y bajan) y el otro arranca de la misma forma para el otro pin. Entonces, si solo tengo 1 no funciona para mí.

  • Visitando la página del producto en atmel, leí que tiene 6 Ext. Interrupciones: enlace

  • La hoja de datos Solo veo referencias int0 (página 47), y no entiendo muy bien la hoja de datos enlace

pregunta Terrik

2 respuestas

6

Hay INT0, y luego está PCINT [0: 5]. INT0 obtiene su propia rutina de interrupción, y el PCINT tiene una rutina para todos los pines configurados para ser utilizados por la interrupción. Eso significa que una de las primeras cosas que debe hacer la rutina de interrupción es averiguar qué pin (s) realmente se cambiaron para activar la interrupción. Debería ser más conveniente utilizarlo de esta forma para su codificador, ya que realmente desea que cualquier cambio de codificador active la misma rutina de interrupción.

No tengo idea si todo esto es accesible a través de la plataforma arduino, o si necesita programar el controlador usted mismo (ya que no soy un usuario de Arduino).

    
respondido por el Scott Seidman
0

Puede hacer esto con una sola interrupción, si es necesario, ORDENANDO las dos clavijas en la única interrupción ("algo cambió"). Aún necesitará dos entradas digitales para leer los pines del codificador, y el ISR (o una rutina de ayudante de nivel ejecutivo) tendrá que asumir la responsabilidad de averiguar qué pines del codificador cambiaron, pero es factible. p>     

respondido por el JRobert

Lea otras preguntas en las etiquetas