TODOPIC
Microcontroladores PIC => - Niple - => Mensaje iniciado por: estig2003 en 30 de Marzo de 2013, 15:20:13
-
hola a todos, necesito hacer un temporizador que arranque despues que lleguen unos pulsos positivos que llegan cada 100 milisegundos y que dure 50 minutos y active una salida a 1 y que durante 10 minutos esta salida este en 0 y luego comienze de nuevo lo importante es que si llegan a parar los pulsos vaya a inicio y ponga la salida a cero y espere de vuelta los pulsos, yo hice la parte del temporizador que con niple es muy facil pero no se como hacer que de dependa del pulso de entrada de 100 milisegundos , espero que alguien pueda ayudarme, desde ya gracias
-
Hola estig2003 y a todos por acá. Soy poco conocedor de esto pero me fijo si puedo tirarte una mano. Para ello me gustaría saber como has hecho el temporizador, tiempos fijos o interrupciones y cual, así como la forma del pulso que llega, ciclo activo, etc. Veamos si puedo, si no alguien de acá lo hará seguro. Un abrazo.
-
no esta bien explicado el ciclo de trabajo.
Deja bien claro, lo que llega y lo que debe salir.
Si es solamente un tipo de pulso con tiempos fijos, lo que debe iniciar el trabajo, es fácil y lo harás con los temporizadores para detectarlos.
-
tengo unos pulsos fijos mas o menos de 100 milisegundos y lo que necesito es que al detectar los pulsos comience el temporizador hasta 50 minutos activando una salida a 1 y luego se quede en cero por 10 minutos y repita la secuencia pero por ejemplo si el temporizador esta en 30 minutos y deja de haber pulsos este pare y vaya al inicio y ponga la salida a cero y espere de vuelta los pulsos para comenzar de vuelta el temporizador, lo que no se como detectar los pulsos para que comience el temporizador y como hacer para que vaya al inicio si no estan los pulsos
-
tengo unos pulsos fijos mas o menos de 100 milisegundos y lo que necesito es que al detectar los pulsos comience el temporizador hasta 50 minutos activando una salida a 1 y luego se quede en cero por 10 minutos y repita la secuencia pero por ejemplo si el temporizador esta en 30 minutos y deja de haber pulsos este pare y vaya al inicio y ponga la salida a cero y espere de vuelta los pulsos para comenzar de vuelta el temporizador, lo que no se como detectar los pulsos para que comience el temporizador y como hacer para que vaya al inicio si no estan los pulsos
Me parece que si adjuntas el NPL sera mas practico ayudarte.
-
Dependiendo de la presicion que nececites quiza te sirva una idea: Ciclá fijo un segundo e inccrementá el contador de 16 bits hasta el valor deseado, comparando el valor tomás accionás lo que desees. Por otro lado ingresá por RB0 el pulso (imaginemos flanco ascendente) y cambia una bandera para el comienzao del contéo. Configurá el temporizador TMR0 para 110 ms o lo que nececites, si se produce la interrupción reseteas todo. Cada vez que llega un pulso a RB0 se debe resetear los contadores del TMR0 para que no llegue al reset. Si te fijas es como el WD. Tambien podés hacerlo con el CCP capturando el pulso y midiendo el tiempo entre 2, si es mayor a 100 ms se resetea. Ojalá me entiendas porque ni yo me entendí. :D :D