Prototipo sub function Button(dim byref port as byte, dim pin, time, active_state as byte) as byte
Regresa Regresa 0 o 255.
Descripcion La funcion elimina los rebotes entre los contactos de un boton (debouncing).
El Parametro port especifica el puerto donde esta el boton; el parametro pin es el numero del pin del puerto y va de 0...7; el parametro time es el periodo del antirebote en milisegundos; el parametro active_state puede ser 0 o 1, y determina si el boton esta en activo logico (1) o activo bajo (0).
Requiere Nada
Ejemplo: el ejemplo lee el RB0, donde el boton esta conectado, en la transicion de 1 a 0 (cuando se deja de presionar el boton), el PORTD es invertido
while true
if Button(PORTB, 0, 1, 1) then ' aqui hay un boton en RB0, que tiene un antirebote de 1 milisegundo y el estado es 1 logico
oldstate = 255
end if
if oldstate and Button(PORTB, 0, 1, 0) then ' aqui esta el mismo boton en RB0, que tiene un antirebote de 1 milisegundo y el estado es 0 logico
PORTD = not(PORTD)
oldstate = 0
end if
wend
es decir si pones Button(porta, 3,50,0) tendras un boton en POTRA.3 con un antirebote de 50mS y el estado que lee es un 0 logico.
aguantame ya mero termino la Traduccion de las librerias....