TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: Gaudizuniga 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!!!
-
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
-
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
-
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.
-
Muy buenas recomendaciones, gracias!!!
-
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
-
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