Autor Tema: Instruccion para push button  (Leído 2078 veces)

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

Desconectado Gaudizuniga

  • PIC10
  • *
  • Mensajes: 30
Instruccion para push button
« en: 24 de Mayo de 2003, 22:36:00 »
   Hola a todos, alguien sabe alguna instrucción o rutina  de preferencia en PBP para que al presionar un boton conectado a "X" puerto, el pic lo interprete que lo eh presionado una sola ves sin importar el tiempo que lo tenga presionado?. Gracias!!!

Desconectado Eduagra

  • PIC16
  • ***
  • Mensajes: 116
RE: Instruccion para push button
« Respuesta #1 en: 25 de Mayo de 2003, 01:38:00 »
Yo haría un bucle de este tipo:

Primero te defines unas variables como:
 TECLA VAR PORTx,y            " Pin del pulsador
 VARIABLE1 VAR BYTE              "  variable 1


Y cuando quieras leer un botón el siguiente código:

input tecla                         " lee el estado de la tecla
If tecla=1 then                  " la tecla se ha pulsado
 variable1=variable1+1     " Aumenta el valor de varible1 en 1
 if variable1=1 then          
     " ............................................................................
     " Ejecuta el código correspondiente a la pulsación de
     " la tecla. La próxima vez que el prógrama pase por
     " aqui, el valor de variable1 será 2 y por tanto no se
     " ejecutará esta parte.
     " .............................................................................
 endif
 if variable1=3 then          " Con esta comparación, hacemos que
     variable1=2                 " el valor de variable1 no se desborde
 endif
 else
 variable1=0         " Si la tecla no esta pulsada pone a 0 la variable
 endif

Si tuviera que esperar a la pulsación de la tecla, sólo tienes que hacer un bucle.

Espero que esto de respuesta a tu pregunta, es el sistema que yo uso y me funciona OK.

Un saludo
Eduardo

Desconectado frenadol501

  • PIC10
  • *
  • Mensajes: 16
RE: Instruccion para push button
« Respuesta #2 en: 25 de Mayo de 2003, 04:07:00 »
asi espera a que sueltes la tecla para reaccionar asi que te da igual el tiempo que la tengas pulsada

if porta1.1=1 then
 pauseus 30  "antirebote ajustar personalmente
 pulsada:
 if porta1.1=1 then goto pulsada
goto saltoadondequiera
endif


salu2

Desconectado Eduagra

  • PIC16
  • ***
  • Mensajes: 116
RE: Instruccion para push button
« Respuesta #3 en: 25 de Mayo de 2003, 14:42:00 »
Ciertamente el ejemplo de Gaudizuniga es mejor cuando el programa debe detenerse a la espera de que se pulse una tecla, el mío valdría para cuando la tecla se puede pulsar en cualquier momento del programa, sin usar interrupciones.

Desconectado Gaudizuniga

  • PIC10
  • *
  • Mensajes: 30
RE: Instruccion para push button
« Respuesta #4 en: 26 de Mayo de 2003, 01:13:00 »
Muy buenas recomendaciones, gracias!!!

Desconectado paramaster

  • PIC10
  • *
  • Mensajes: 1
RE: Instruccion para push button
« Respuesta #5 en: 16 de Noviembre de 2004, 18:44:00 »
Hola muy buenas:
Tengo una consulta de principiante ; y quizas tendria que ir a otro foro pero como la informacion que estaba buscando era sobre los pulsadores os hago el comentario a ver si me podeis ayudar.
Resulta que he conseguido hacer el primer proyecto del led parpadeando , pero ahora queria hacerlo funcionar con un pulsador he probado el bucle que puso eduardo y me hace como si fuera al azar al pulsar dependiendo del momento que lo suelto se enciende y otras no , ah y cuando toco el cristal tambien responde como pulsador. Podriais ayudarme? Gracias y un saludo

Desconectado khasistos

  • PIC18
  • ****
  • Mensajes: 493
RE: Instruccion para push button
« Respuesta #6 en: 16 de Noviembre de 2004, 19:38:00 »
HOla :
em Pro hay una instruccion llamada botton la cual hace que el cambio de estado de una pata haga algo que le ordenes como ir a una subrutina o cosas mas simples ...

Busca en el manual esa instruccion...

saludos
khasistos


 

anything