Autor Tema: Como poner un pic a esperar entrada  (Leído 1298 veces)

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

Desconectado juan2008juan

  • PIC10
  • *
  • Mensajes: 5
Como poner un pic a esperar entrada
« en: 30 de Enero de 2008, 22:43:25 »
Hola Compañeros...

Mi consulta es la siguiente, estoy en un proyecto con un pic 16f84, la verdad todo iba muy bien hasta que necesite que el programa se tetenga y espere...

Necesito saber como hacer para que el programa se quede detenido esperando la entrada de X pin por un lapso de tiempo, que tengo que calcular pero digamos unos 3 segundos. Algo lei sobre "time out" pero no comprendi como trabajarlo, si me ayudan la verdad lo agradesco...

Modificado:
Bueno programo con pic simulator ide, la entrada que espero puede ser la rb7 o rb3, nesecito que cuando entra informacion el pic trabaje y si no que este revisando la entrada por 3 segundos, bueno si el llega informacion en el lapso de sos tres segundos que trabaje, no lo puedo dejar solo que espere porque si llega informacion en ese tiempo y el pic lo la detecta no hago nada, si me facilitan un ejemplo yo parto de alli gracias.


Juan M. desde Costa Rica.
Gracias.
« Última modificación: 30 de Enero de 2008, 23:23:20 por juan2008juan »

Desconectado ema

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1078
Re: Como poner un pic a esperar entrada
« Respuesta #1 en: 30 de Enero de 2008, 23:05:26 »
Primero. Te recomiendo que veas en que seccion del foro publicar este tema para las ayudas sean mas acertadas. Por ejemplo si tu programa esta en "C", lo publicarias en "Lenguaje C para microcontroladores". Si esta en Assembler, en la seccion de assembler, etc.

Y ademas que des mas datos como por ejemplo:

*Que entrada estas esperando(Puede ser que sea alguna en la que hay interrupciones)
*En que lenguaje lo escribiste

Ya tanto lo estes encribiendo en C como en assembler, lo que tienes que hacer es un bucle en el que se chequee la entrada y sino esta activa se incremente un contador, si el contador llega a una determinada cant.(que represente los 3 seg) sin que se active la entrada salis del bucle. A esto se lo llama "time out", que significa fuera de tiempo.

Saludos

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 664
Re: Como poner un pic a esperar entrada
« Respuesta #2 en: 02 de Febrero de 2008, 08:54:19 »
Hola Compañeros...

Mi consulta es la siguiente, estoy en un proyecto con un pic 16f84, la verdad todo iba muy bien hasta que necesite que el programa se tetenga y espere...

Necesito saber como hacer para que el programa se quede detenido esperando la entrada de X pin por un lapso de tiempo, que tengo que calcular pero digamos unos 3 segundos. Algo lei sobre "time out" pero no comprendi como trabajarlo, si me ayudan la verdad lo agradesco...

Modificado:
Bueno programo con pic simulator ide, la entrada que espero puede ser la rb7 o rb3, nesecito que cuando entra informacion el pic trabaje y si no que este revisando la entrada por 3 segundos, bueno si el llega informacion en el lapso de sos tres segundos que trabaje, no lo puedo dejar solo que espere porque si llega informacion en ese tiempo y el pic lo la detecta no hago nada, si me facilitan un ejemplo yo parto de alli gracias.


Juan M. desde Costa Rica.
Gracias.

ejemplo en basic:
inicio:
if portA.1=1 then siguiente else inicio
siguiente:
      .
      .
      aca se coloca el set de intruciones que necesites
      .
end.
eso lo que hace es esperar a que el puerto RA1 de un determinado pic dome la decision de seguir el proceso del un codigo sino el pic es 1 continua con todas las demas intrucciones si es cero sigue preduntando hasta que ese pin sea uno.

saludos y espero que mi explicacion te aclare. Ojo como digo el colega deberias postear este tema en otra seccion.
bye
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Como poner un pic a esperar entrada
« Respuesta #3 en: 11 de Febrero de 2008, 01:54:28 »
puedes usar la interrupción externa por RB0 y sin importar el tiempo cuando ocurra ese evento se ejecutará, y entonces tendras al micro disponible para realizar otra tarea. El único inconveniente es que solo es el pin RB0 el qeu teine esa interrupcion, ahora talvez se pueda por interrupción de cambio de nivel en rb4 a rb7
.


 

anything