Paso 7: Programa el Trakr
////////////////////////////////////////////
relaycontrol aplicación para Spy Video TRAKR.
Analiza el programa para ver si era el botón A
TRAKR prensado en remoto y sistemas de GPC0 alta
y GPC1 alta para enviar corriente a través de
bobina electromagnética de un relé. Esta voluntad
Accione el interruptor del relé de cierre el
circuito de un dispositivo externo.
///////////////////////////////////////////
#include "svt.h" //include API oficial
#include "JAPI.h" //include "Salsa secreta" API
#define GPC0 (1 << 0) //bitmask PIN GPC0 = 00000001
#define GPC1 (1 << 1) //bitmask PIN GPC1 = 00000010
#define GPC2 (1 << 2) //bitmask PIN GPC2 = 00000100
#define GPC3 (1 << 3) //bitmask PIN GPC3 = 00001000
#define GPC4 (1 << 4) //bitmask PIN GPC4 = 00010000
#define GPC5 (1 << 5) //bitmask PIN GPC5 = 00100000
#define GPC6 (1 << 6) //bitmask PIN GPC6 = 01000000
#define GPC7 (1 << 7) //bitmask PIN GPC7 = 10000000
int keyState; definir "keystate" como entero
void Start()
{
JAPI_SetIoOutputMode(GPC0+GPC1); //Set modo de salida de los pines GPC0 y GPC1
}
bool Run()
{
keyState=GetRemoteKeys(); Tecla de control remoto TRAKR
asignar a keystate
Si (keyState > 0)
{//if keystate es mayor que 0
if(keyState&KEY_INPUT1)
{//Button un prensado
JAPI_SetIoHigh(GPC0+GPC1); //Set GPC0 GPC1 patillas y alta (3,3 v)
} else {}
JAPI_SetIoLow(GPC0+GPC1); Desconectar pins GPC0 y GPC1
}
if(keyState&KEY_HOME)
{//if botón home presionado
devuelven el valor false; Esto va a terminar el bucle
}
}
verdaderas; bucle se repetirá hasta falso
}
End() vacío
{Fin de //Program - desconectar los pines
JAPI_SetIoLow(GPC0+GPC1);
}
Y el siguiente es el archivo Make:
# Makefile para juguete TRAKR
# Proyecto Trakr
TRACKR_PATH = C:/Trackr
PROGRAM_NAME = relaycontrol
PRETTY_NAME = relaycontrol
OUTPUT_PATH =. / intermedio
OUTPUT_NAME = $(OUTPUT_PATH) / $(PROGRAM_NAME) .elf
INTERNALS_PATH =... / Funcionamiento interno
FUENTES = app.c
S_OBJECTS = $(OUTPUT_PATH)/app.o
OBJETOS = $(S_OBJECTS) $(INTERNALS_PATH)/trakr.a
SHELL = sh
CC = gcc-elf-brazo
COMO = brazo-elf-como
BIN = brazo-elf-ld
LD = brazo-elf-ld
TOPMEMORY = 0XFFE7C000
CFLAGS = - O0-ME... / Internos/Include-me... / Funcionamiento interno-pared - gstabs +
TARGET_FLAG = - mcpu = arm926ejs - mapcs-32 - mlittle-endian - specs=specs.semi
LDFLAGS = -T... /Internals/WJ_APP_8M.LD -Wl,--defsym-Wl,__stack_base=$(TOPMEMORY) -Wl,-mapa -Wl, $(basename $ - nostartfiles-estática
todos: prebuild $(OUTPUT_NAME) así
$(OUTPUT_NAME): $(OBJECTS)
"Enlazan a... "
"Crear archivo $
-u _start -o $@ $(INTERNALS_PATH)/trakr_start.a $(OBJECTS) $(TARGET_FLAG) $(LDFLAGS)
$(OUTPUT_PATH)/app.o:app.c Makefile
"Compilación de $<"
-c -o "$" $< "$(TARGET_FLAG) $(CFLAGS)
. PHONY: limpiar así los
limpiar:
$(RM) -f $(PROGRAM_NAME) .bin
$(RM) -f "$(PRETTY_NAME) .bin"
$(RM) -f $(OUTPUT_PATH)/app.o
$(RM) -f $(OUTPUT_NAME)
$(RM) -f $(MKDEPFILE)
así:
brazo-elf-objcopy - O binario $(OUTPUT_NAME) "$(PRETTY_NAME) .bin"
[ -d "E:/" ] ; entonces \
CP "$(PRETTY_NAME) .bin" e:/aplicaciones /; \
fi
prebuild:
# Fin de archivo make
Asegúrese de que el Trakr está desconectado y conectarlo a su ordenador utilizando el cable USB amarillo que vino con el Trakr. Copie relaycontrol.bin a la carpeta de aplicaciones dentro de la carpeta de Trakr. Desconecte el Trakr del ordenador y conecte el Trakr. Encienda el Trakr remoto, haga clic en el botón Inicio y seleccionar relaycontrol del menú. Utilice control remoto de Trakr el Trakr a una tageta. Objetivo cámara de Trakr directamente en el destino y presione el botón A del mando para disparar dardos de espuma en el destino.
¡ Felicidades! En este Instructable usted aprendió cómo hackear el Spy Video Trakr. Usted aprendió cómo descargar e instalar el compilador de lenguaje C para el Trakr. Usted aprendió cómo compilar un programa simple e instalarlo en el Trakr y luego ejecutar este sencillo programa. Luego aprendió a abrir el Trakr, coloque pins de puente a las conexiones de GPIO en el tablero de circuito principal de la Trakr. Aprendiste cómo funciona un relé electrónico, lo que parece el diagrama electrónico scematic para un relé, y lo que parece un diagrama del circuito electrónico real en que el relé se utiliza. Usted aprendió cómo hacer cables de conversión para conectar el Trakr a dispositivos externos. Usted aprendió cómo hacer una cubierta de carga más grande para el Trakr y montar una plataforma de lanzador de misil de espuma en la bandeja de carga de Lego. Aprendió a aprovechar 9 voltios y 5 voltios de alimentación del Trakr. También aprendió a utilizar el relé electrónico para el control de un lanzador de misil del dardo de espuma. Finalmente aprendió a escribir y compilar un programa para disparar misiles desde el lanzador de misil de espuma e instalarlo en el Trakr y luego ejecutar el programa.