TODOPIC

Microcontroladores PIC => - Niple - => Mensaje iniciado por: nanosegundo en 15 de Noviembre de 2005, 10:18:00

Título: Medir duracion de un pulso
Publicado por: nanosegundo en 15 de Noviembre de 2005, 10:18:00
   Hola, toy programando con niple y hay una cosa que no se me ocurre como hacer:
 Por uno de los pines del pic ( de el puerto que sea) me entra un pulso de duración variable y quisiera saber como puedo medir la duración de ese pulso; no uso el módulo ccp porque lo necesito para cuatro pines distintos. ¿Alguien me puede dar una pista?

  Munchisimas gracias
Título: RE: Medir duracion de un pulso
Publicado por: RaDoN en 15 de Noviembre de 2005, 10:22:00
Se me ocurre que lo más corriente para estos casos es meter el pulso por una patilla con interrupción, cuando esta salte pones el timer a contar, cuando baje, volverá a saltar y tendrás el tiempo en el timer. Según la duración de este pulso, tendrás que configurar el timer y/o ver cuantas veces desbordo ...
Título: RE: Medir duracion de un pulso
Publicado por: nanosegundo en 15 de Noviembre de 2005, 10:30:00
  El problema es que lo necesito para cuatro entradas y solo tengo una entrada de interrupción (16f877).
  Gracias de todos modos
Título: RE: Medir duracion de un pulso
Publicado por: nanosegundo en 15 de Noviembre de 2005, 10:42:00
 Se me ocurre una pequeña modificación de lo que me ha dicho radon. Es estar leyendo constantemente el puerto, cuando detecte un 1 en el pin deseado activo el temporizador y este lo detengo cuando haga una lectura de 0, lo podria hacer en paralelo para un total de tres pines (ya que tengo 3 temporizadores) y cuando pase ese pin a 0 finalizar el programa.
  ¿Es buena idea o tiene algún problema este metodo?
Título: RE: Medir duracion de un pulso
Publicado por: RaDoN en 15 de Noviembre de 2005, 15:26:00
No se... pero de esta forma al estar chequeando el puerto, no tiene mucha precisión, porque si el bucle de chearlo son 2 o 3 instrucciones, poniendo por ejemplo un cristal de 20Mhz, 200nS *3 ... hasta 600nS o más puede diferir de la realidad, y esto suponiendo estar chequeando uno solo, cuando sean más pues imaginate...