7: Práctica de Módulos Contadores y Aplicaciones de Circuitos
También se declaran variables globales llamadas
usan por dos métodos:
llama y los copia en estas variables globales para que el método
usa la variable
PwmMonitor
apuntadores de direcciones para almacenar sus medidas en la "localidad acordada mutuamente en la
RAM principal" mencionada anteriormente.
Cuando otro objeto llama este método
monitoreando la señal junto y también las direcciones donde la medición de pulsos altos y bajos
debería almacenarse y una dirección para almacenar el numero de pulsos que se han contado. Tenga
en mente que estos parámetros (
método
. Para disponer de esto valores en otros métodos el método
start
variables globales. Así antes de iniciar el nuevo cog el método
,
a
thaddr
tLowAddr
tlAddr
método
en un nuevo cog y pasa las direcciones del arreglo
PwmMonitor
presento en la práctica de Objetos.
PUB start(pin, thighAddr, tlowaddr, pulsecntaddr) : okay
'...
' Copia variables locales del método a variables globales del objeto
apin := pin
thaddr := tHighAddr
tladdr := tLowAddr
pcntaddr := pulseCntAddr
' Inicia el nuevo cog.
okay := cog := cognew(PwmMonitor, @stack) + 1
Los objetos que inician nuevos cogs que están diseñados para intercambiar información con otros
objetos tienen métodos
pero necesita configurarse, se utiliza un método llamado
Observe la última línea en el método
o regresa el numero de cog en el que se inicio el método
se suma uno a este valor y el resultado se almacena en la variable
del método
. Así, el método
okay
start
si tuvo éxito. El objeto llamando al método
un bloque
para decidir qué hacer. Nuevamente si el valor regresado es 0 (falso) significa que no
if
hay cogs disponibles; mientras que si el valor es no-cero la aplicación sabe que el cog se inicio
exitosamente.
El método
también puede determinar si el proceso se inicio apropiadamente porque la variable
stop
también almacena el resultado regresado
cog
cosa que hace es usar un enunciado
vez, si el valor del
cog
detenerse. En otras palabras si el valor de
1) Resta 1 del valor almacenado por
(Recuerde, un comando en el método
2) Detiene el cog
3) Limpia el valor de
activo (cog)
y
. El método
start
pwmMonitor
para configurar pins E/S y usa las otras tres variables como
apin
start
,
pin
thighAddr
y
a
pulseCntAddr
pcntaddr
y
por regla. También por regla si el objeto no inicia un nuevo cog
start
stop
. El comando
start
regresa 0 (falso) si el proceso fallo al inicio o un no-cero
start
start
cognew
para asegurarse que realmente se inicio un cog. Por tercera
if
es cero, no hay un proceso actual bajo el control del objeto que necesite
es no-cero
cog
cog
start
para que el objeto sepa que no está a cargo actualmente de un proceso
cog
Kit Educativo de Practicas Propeller: Fundamentos · Página 169
,
,
, y
apin
thaddr
tladdr
recibe parámetros de un objeto que
start
pwmMonitor
del objeto pasa el numero de pin E/S que estará
,
,
tlowaddr
pulsecntaddr
copia
start
. Después de eso el comando
' Clave 2, copia parámetros
' a variables globales
' que usara el proceso.
o
.
init
config
regresa -1 si no hay cogs disponibles
cognew
, el cual puede ser 0 a 7. Después
PwmMonitor
del objeto y el valor de regreso
cog
puede usar el valor de regreso del método
mas uno. Si se llama el método
cogstop(cog~ − 1)
para obtener el numero de cog que necesita detener.
sumo 1 a la variable
. Estas variables se
pcntaddr
pueda usarlas. El método
) son variables ocales en el
tiene que copiarlos a
start
a
,
pin
apin
tHighAddr
inicia el
cognew
. El arreglo
stack
stack
start
la primer
stop
hace 3 cosas:
).
cog
a
se
en