Revisión de la llamada a método
El objeto ButtonBlink de abajo es un ejemplo de la práctica de Métodos y Cogs. Cada vez que
presiona y suelta el botón conectado a P23 el objeto mide el tiempo aproximado que se presiono y usa
este valor para determinar el periodo completo de encendido/apagado, después el LED parpadea diez
veces. (El botón de eliminación de rebotes no se requiere con los botones del PE kit). El objeto
cumple estas tareas llamando otros métodos en el mismo objeto. El código en el método
método
para medir el tiempo que se presiono el botón. Cuando
ButtonTime
valor el método
Blink
.
ButtonTime
Cargue ButtonBlink.spin en el chip Propeller y pruébelo para asegurarse que puede usar el
botón en P23 para programar el periodo de parpadeo del LED
'' ButtonBlink.spin
PUB Main | time
Repeat
time := ButtonTime(23)
Blink(4, time, 10)
PUB Blink(pin, rate, reps)
dira[pin]~~
outa[pin]~
repeat reps * 2
waitcnt(rate/2 + cnt)
!outa[pin]
PUB ButtonTime(pin) : dt | t1, t2
repeat until ina[pin]
t1 := cnt
repeat while ina[pin]
t2 := cnt
dt := t2 - t1
Llamando Métodos en otros Objetos con la Notación Dot
Los métodos
ButtonTime
puede ser útil en diferentes aplicaciones. Estos métodos pueden almacenarse en archivos objetos
separados y después cualquier objeto que lo necesite para hacer parpadear un LED o medir una
pulsación de un botón puede accesar estos métodos siguiendo estos dos pasos:
1) Declarar el objeto en un código de bloque
2) Use ObjectNickname.MethodName para llamar al método del objeto.
Lo que se llama Notación Dot aquí se refiere como "referencia método-objeto" en el Manual Propeller.
se llama, con uno de los parámetros siendo el resultado de la medición de
y
del objeto ButtonBlink nos dan un ejemplo simple del código que
Blink
Kit Educativo de Practicas Propeller: Fundamentos · Página 85
6: Práctica de Objetos
, y dar un apodo al archivo del objeto.
OBJ
llama al
Main
regresa un
ButtonTime