Prueba final 2013 ej. 3

Prueba final 2013 ej. 3

de Felipe Rafael Tambasco Furtado -
Número de respuestas: 2

Viendo esta prueba y su solución me surgen una duda.

https://eva.fing.edu.uy/pluginfile.php/54391/mod_folder/content/0/imp-2013-p2_v7.pdf

https://eva.fing.edu.uy/pluginfile.php/54391/mod_folder/content/0/imp-2013-p2-sol.pdf

En ambas rutinas de atención a las interrupciones, por qué hace falta habilitar interrupciones al inicio si me dicen que el tiempo entre que se suelta el botón y se lo vuelve a presionar es siempre mayor a 256 ms?


En respuesta a Felipe Rafael Tambasco Furtado

Re: Prueba final 2013 ej. 3

de Rodolfo Jalabert -

Buenas Felipe, 

siempre que se esté trabajando en modo 2, quienes se encargan de manejar las prioridades de las interrupciones son los Controladores de Interrupciones y no las ISRs, por lo cual siempre se deben habilitar las interrupciones inmediatamente, de manera que pueda funcionar correctamente el protocolo daisy chain. Es cierto que hay casos, como podría ser éste, en los cuales no importaría (en principio) dónde habilitar las interrupciones, pero no es una buena práctica el no habilitarlas al principio (y es conceptualmente erróneo), ya que si en el futuro se quisiera agregar al sistema otros dispositivos que interrumpan con mayor prioridad que los ya existentes, el código de las ISRs implementado estaría impidiendo que se ejecuten las ISRs de mayor prioridad.

En definitiva, siempre que se use el uP en modo 2, hay que habilitar las interrupciones al principio de las ISRs y dejar que los controladores manejen las prioridades.


Saludos,

rodolfo.-