TODOPIC
Microcontroladores PIC => - Niple - => Mensaje iniciado por: henryflash en 30 de Octubre de 2011, 22:35:37
-
hola a todos, perdonen la molestia hice un programa para el automatismo de una maquina, consta de dos señales de unos micro contactos los dos a la ves habilitan el segundo paso, pero el tiempo entre uno y otro no debe exceder sierto limite entre 1 a 5 segundos, no entiendo como hacerlo funcionar por tmr0 ,ahh cualquiera de las ordenes pueden ser la primera ejemplo se m1 empieza el tmr0 a contar m2 desabilita el tmr0 y el programa no sufre alteraciones si m2 es el primero en habilitar m1 anula la cuenta de tmr0. uyy habran entendido lo que quiero perdonen si di muchas vueltas..
lei los tutoriales que andan por el foro pero no me ayudaron mucho, o yo nos los interprete.
Saludos enrique...
-
A simple vista, se me ocurre que lo ms facil seria el que te creases una variable y le asignas el valor "0" de forma que cuando se active cualquiea de los 2 contactos primero a la vez que se habilita el contador, pases esa varaible a "1".
Cuando pases esos 1-5 sg realizas lo que necesitas y puedes o no, pasarla otra vez a = para una nueva cuneta.
Asi cuando despues de activar el primer pulsador, compruebas el valor de la variable al accionar el 2º pulsador, si es 1 reserteas y si es 0 empiezas una nueva cuenta al ser de ese modo el primer contacto en actuar.
F.
-
A simple vista, se me ocurre que lo ms facil seria el que te creases una variable y le asignas el valor "0" de forma que cuando se active cualquiea de los 2 contactos primero a la vez que se habilita el contador, pases esa varaible a "1".
Cuando pases esos 1-5 sg realizas lo que necesitas y puedes o no, pasarla otra vez a = para una nueva cuneta.
Asi cuando despues de activar el primer pulsador, compruebas el valor de la variable al accionar el 2º pulsador, si es 1 reserteas y si es 0 empiezas una nueva cuenta al ser de ese modo el primer contacto en actuar.
F.
hola Fer supongamos que en mi programa en la parte que consulta si algunos de los micros esta accionado en caso positivo disparo con una bandera el contador tmr0, hasta este paso todo bien pero yo quiero que cuando se presione el micro faltante se
vuelva el tmr0 a cero o en caso que el tmr0 termino su cuenta y no se acciono el segundo micro contacto una bandera me redireccione el programa a donde yo quiera.Esa seria mas o menos la idea.
-
hola yo hice algo parecido. active un timer que contara los segundos..... en la funcion que queria hacer le preguntaba al timer llegaste a 5 ..... si avia llegado desconectaba un rele , sino llego seguia incrementando y pasando una i otra vez por la pregunta de si llego.
-
A simple vista, se me ocurre que lo ms facil seria el que te creases una variable y le asignas el valor "0" de forma que cuando se active cualquiea de los 2 contactos primero a la vez que se habilita el contador, pases esa varaible a "1".
cambias la bandera y activas el contador y si llega a 1-5sg. lo reseteas, lo apagas o lo que quieras.
-
Bueno, el entorno es asi: empieza mirando las dos entradas (m1,m2), cualquier una dispara el contador (de zero) volvimos a mirar las dos entradas (una ya esta ligada) buscando ver si liga la faltante, si ocurre, vamos mirar el conteo y ver si es superior al numero programado, si ocurre, hace lo que hace y si no, desarma el contador y volvimos a empezar.
-
Bueno, el entorno es asi: empieza mirando las dos entradas (m1,m2), cualquier una dispara el contador (de zero) volvimos a mirar las dos entradas (una ya esta ligada) buscando ver si liga la faltante, si ocurre, vamos mirar el conteo y ver si es superior al numero programado, si ocurre, hace lo que hace y si no, desarma el contador y volvimos a empezar.
Si gracias a todos los que aportaron, lo voy a volcar en niple (ahhhhhh ya encargue la versión 5,6) no les prometo una respuesta rápida pero cundo tenga tiempo lo programo y subo la parte del programa en cuestión, Muchísimas gracias a todos , me encanta este foro.