Práctica de Objetos
La Figura 6-2 muestra un ejemplo de cómo funciona. Los métodos
un objeto llamado ButtonAndBlink. Para tener acceso a los métodos públicos del objeto
ButtonAndBlink el objeto DotNotationExample tiene que empezar declarando el objeto
ButtonAndBlink y darle un apodo. Estas declaraciones de objetos se hacen en el código de bloque
del objeto DotNotationExample. La declaración
objeto ButtonAndBlink.
La declaración
hace posible para el objeto DotNotationExample llamar métodos en el objeto
PbLed
ButtonAndBlink usando la notación ApodoObjeto.Nombre Método. Así DotNotationExample usa
time := PbLed.ButtonTime(23)
parámetro 23 y asigna el resultado regresado a la variable
comando
PbLed.Blink(4, time, 20)
método
de ButtonAndBlink.
Blink
Ubicación de archivos: Un objeto tiene que estar ya sea en el mismo archivo con el objeto que lo está
declarando o en el mismo archivo que el archivo Propeller Tool.exe. Los objetos almacenados con la
herramienta Propeller comúnmente se refiere como librería de objetos.
Figura 6-2: Llamando Métodos en otros Objetos con la Notación Dot
'File: DotNotationExample.spin
OBJ
PbLed : "ButtonAndBlink"
PUB Main | time
repeat
time := PbLed.ButtonTime(23)
PbLed.Blink(4, time, 20)
Llamada a método con
ApodoObjeto.NombreMetodo
Cargue el objeto DotNotationExample en el chip Propeller. Si usted está ingresando el código
manualmente asegúrese que ambos archivos están en el mismo directorio. También el nombre
del archivo del objeto ButtonAndBlink debe ser ButtonAndBlink.spin.
Verifique que el programa hace lo mismo que el objeto del ejemplo anterior (ButtonBlink).
Siga los pasos en la Figura 5-4 y asegúrese que está claro como ButtonAndBlink obtiene un
apodo en la sección
método en el objeto ButtonAndBlink.
Compare DotNotationExample.spin con el objeto ejemplo anterior (ButtonBlink).
Organización de Objetos
Los objetos pueden declarar objetos que pueden a su vez declarar otros objetos. Es importante
examinar las relaciones entre objetos padres con sus hijos, nietos y así sucesivamente. Hay un par de
formas para examinar esos árboles familiares de objetos. Primero vamos a ver las relaciones en la
ventana de Información del Objeto con la característica Compilar de la Herramienta Propeller:
Pagina 86 · Kit Educativo de Prácticas Propeller: Fundamentos
PbLed : "ButtonAndBlink"
para llamar el método
para pasar 4, el valor almacenado en la variable
'' Archivo: ButtonAndBlink.spin
'' Objeto Ejemplo con dos metodos
Declaracion
PUB ButtonTime(pin): delta | time1, time2
de Objeto
PUB Blink( pin, rate, reps)
y como se usa ese apodo por DotNotationExample para la llamada de
OBJ
ButtonTime
le da un apodo
de ButtonAndBlink, pasa el
ButtonTime
. DotNotationExample también usa el
time
repeat until ina[pin] == 1
time1 := cnt
repeat until ina[pin] == 0
time2 := cnt
delta := time2 - time1
dira[pin]~~
outa[pin]~
repeat reps * 2
waitcnt(rate/2 + cnt)
!outa[pin]
y
se movieron a
Blink
OBJ
al
PbLed
y 20 al
time