Autor Tema: Crear interrupcion  (Leído 2229 veces)

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

Desconectado walas

  • PIC10
  • *
  • Mensajes: 6
Crear interrupcion
« en: 11 de Julio de 2010, 12:12:24 »
Hola, me llamo Jose y soy nuevo en este mundillo, tengo un pic 18f2550 y quisiera saber si se pueden generar interrupciones a voluntad, me explico mejor tengo el pic con las patillas 2,3 y 4 conectadoas a unos pulsadores, quiero que cuando por una de esas 3 patillas se ponga un nivel alto el pic haga una tarea de medir el tiempo que a estado sin pulsar, por lo que se me plantean 2 dudas.

1º como hago para que cuando se active el flanco de subida salte una interrupcion para capturar el tiempo
2º como hago para llevar un contador que cuente este tiempo (el tiempo tiene que ser muy pequeño por que apra un futuro quiero utilizarlo para controlar el ancho del PWM de un servomotor)

Gracias de antemano

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Crear interrupcion
« Respuesta #1 en: 11 de Julio de 2010, 19:13:46 »
El microcontrolador 18F2550 tiene 3 interrupciones externas que pueden generar una interrupción por un flanco (Este se selecciona en la configuración), así que puedes utilizarlo para lo que deseas. Luego utilizando un timer como temporizador puedes contar cuantos ciclos de reloj pasan y con ello calcular el tiempo. Según el lenguaje/compilador que utilices puedes buscar en el foro, hay suficiente información al respecto.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado walas

  • PIC10
  • *
  • Mensajes: 6
Re: Crear interrupcion
« Respuesta #2 en: 12 de Julio de 2010, 04:49:30 »
Gracias

Mi duda era si tengo que utilizar expresamente las patillas de interrupcion externa, es que tengo 2 de ellas utilizadas con el bus I2C con lo cual me gustaria poder utilizar otras 3 que no fueran esas.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Crear interrupcion
« Respuesta #3 en: 12 de Julio de 2010, 10:08:12 »
Gracias

Mi duda era si tengo que utilizar expresamente las patillas de interrupcion externa, es que tengo 2 de ellas utilizadas con el bus I2C con lo cual me gustaria poder utilizar otras 3 que no fueran esas.


Bueno, eso no lo expresaste en el primer mensaje. Se pueden utilizar los RB4-RB7 pero tratarlos de forma diferente, los pines de los timer utilizados para contador.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado walas

  • PIC10
  • *
  • Mensajes: 6
Re: Crear interrupcion
« Respuesta #4 en: 12 de Julio de 2010, 14:59:09 »
Gracias

Mi duda era si tengo que utilizar expresamente las patillas de interrupcion externa, es que tengo 2 de ellas utilizadas con el bus I2C con lo cual me gustaria poder utilizar otras 3 que no fueran esas.


Bueno, eso no lo expresaste en el primer mensaje. Se pueden utilizar los RB4-RB7 pero tratarlos de forma diferente, los pines de los timer utilizados para contador.


Saludos!

Uo eso seria estupendo, estoy utilizando los pines RA0. RA1 y RA2 pero supongo que a una mala podria modificar mi plana para que se adecuara a esas patillas (si no se pueden usar las que uso yo claro jejeje)

Suki serias tan amable de explicarme como usarlas de forma diferente? o decirme donde podria encontrar la forma de hacerlo.

Muchas gracias ^^

Desconectado walas

  • PIC10
  • *
  • Mensajes: 6
Re: Crear interrupcion
« Respuesta #5 en: 12 de Julio de 2010, 15:10:15 »
Vale ya encontre com ohacer la interrupcion, gracias Suki me pondre a saco con el codigo. pero una ultima cosa, la interrupcion salta cada vez que hay un flanco de subida? o cuando hay un flanco (subida o bajada).

Me pondre a trabajar evaluando la primera situacion.

Desconectado Strepto

  • PIC16
  • ***
  • Mensajes: 159
    • Pictronics
Re: Crear interrupcion
« Respuesta #6 en: 12 de Julio de 2010, 15:21:01 »
Los pines para las interrupciones tienes que ser RB4,5,6,7 por lo que desgraciadamente te tocara hacer un pequeño ajuste a tu placa, y esta interrupcion salta con el cambio de flanco en cualquiera de los 4 pines.
Por otro lado, el flanco lo elijes tu mediante un registro, del que no me acuerdo su nombre.

Un saludo y suerte!


 

anything