Autor Tema: función set_xxxx()  (Leído 2140 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado badtzdizzy

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 234
función set_xxxx()
« en: 26 de Abril de 2005, 20:39:00 »
Hola

Tengo una duda y es que no se si en todas las interrupciones es necesario volver a establecer el set_xxxx() cada vez que se entra a la función de interrupción. Lo pregunto hasta donde yo he visto aquí en el foro sólo se hace con el timer0 pero no se si también se deba de hacer con las demás interrupciones?

Gracias por su ayuda

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: función set_xxxx()
« Respuesta #1 en: 26 de Abril de 2005, 23:41:00 »
¿A que set_ te refieres?, a la de los timers? si es así se entra en la interrupción al desbordarse el TMR, con lo que tendrás que hacer una nueva precarga al entrar en la interrupción.

Un saludo

Desconectado _Romeo

  • PIC10
  • *
  • Mensajes: 6
RE: función set_xxxx()
« Respuesta #2 en: 27 de Abril de 2005, 15:13:00 »
Cita:
tendrás que hacer una nueva precarga al entrar en la interrupción


Bueno, no sé hasta qué punto esa afirmación es correcta porque yo trabajo con la interrupción del rtcc y con sólo inicializarla en el programa principal la cosa va de maravilla ad eternum.

Otra cosa es la desviación que se pueda cometer dejando el rtcc funcionar sin recargarlo.

Corregidme si me equivoco...  Angelito

Un saludo, Pocher & co Giño

Desconectado badtzdizzy

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 234
RE: función set_xxxx()
« Respuesta #3 en: 27 de Abril de 2005, 16:05:00 »
Hola

Exactamente a ese set_xxxx me refiero, al que se utiliza para realizar los incrementos en los timers. Lo que sucede es que en mi programa utilizo el timer0 y el timer1. Para la interrupción por el timer0 si volvía a cargar el set_rtcc() dentro de la función de interrupción pero para el set_timer1() sólo lo hacía al iniciar el programa y pues creo que por ese motivo tengo problemas en la función de interrupción.

Gracias por su ayuda

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: función set_xxxx()
« Respuesta #4 en: 27 de Abril de 2005, 22:51:00 »
Romeo set_rtcc es para que un contador empiece a contar a partir de un determinado número y al desbordarse el TMR, si está activada la interrupción salta a atender la rutina de interrupción. Creo que tú te referirás a enable_interrupts(INT_RTCC) que esto, sí, normalmente se hace en el main ().

badtzdizzy como he comentado antes, si quieres que tanto el TMR0 como el TMR1 empiecen a contar a partir de un determinado número tendrás que precargarlos al entrar en sus respectivas funciones de atención a la interrupción. Por supuesto en el main tendrás que haber habilitado sus correspondientes bits de interrupción y también el GLOBAL.

Un saludo

Desconectado badtzdizzy

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 234
RE: función set_xxxx()
« Respuesta #5 en: 28 de Abril de 2005, 12:11:00 »
Gracias

El problema estaba justo ahí, no precargaba el contador del timer1 y por eso obtenía resultados que no esperaba.



 

anything