Étape 7: Programmer le Trakr
////////////////////////////////////////////
relaycontrol app pour espion vidéo TRAKR.
Programme analyse pour voir si le bouton A été
pressé sur TRAKR distant et ensembles GPC0 haute
et GPC1 élevé d’envoyer courant à travers
bobine électromagnétique du relais. Cette volonté
déclencher du relais fermeture de la
circuit d’un appareil externe.
///////////////////////////////////////////
#include « svt.h » //include API officielle
#include « JAPI.h » //include « Secret sauce » API
#define GPC0 (1 << 0) //bitmask pour axe GPC0 = 00000001
#define GPC1 (1 << 1) //bitmask pour axe GPC1 = 00000010
#define GPC2 (1 << //bitmask 2) pour la broche GPC2 = 00000100
#define GPC3 (1 << 3) //bitmask pour broche GPC3 = 00001000
#define GPC4 (1 << 4) //bitmask pour axe GPC4 = 00010000
#define GPC5 (1 << 5) //bitmask pour broche GPC5 = 00100000
#define PDC6 (1 << 6) //bitmask pour axe PDC6 = 01000000
#define GPC7 (1 << 7) //bitmask pour axe GPC7 = 10000000
keyState int ; qualifier de « keystate » entier
void Start()
{
JAPI_SetIoOutputMode(GPC0+GPC1) ; mode de sortie //Set pour broches GPC0 et GPC1
}
bool Run()
{
keyState=GetRemoteKeys() ; Vous appuyez sur la touche télécommande TRAKR
assigner à keystate
Si (keyState > 0)
{//if keystate est supérieur à 0
if(keyState&KEY_INPUT1)
{//Button une pressée
JAPI_SetIoHigh(GPC0+GPC1) ; //Set GPC0 et GPC1 broches hautes (3.3V)
} else {}
JAPI_SetIoLow(GPC0+GPC1) ; Couper les pins GPC0 et GPC1
}
if(keyState&KEY_HOME)
{//if bouton home pressé
retourne la valeur false ; Cela mettra fin à la boucle
}
}
retourne la valeur true ; boucle se répète jusqu’au faux
}
void End()
{//Program fin - éteindre les deux broches
JAPI_SetIoLow(GPC0+GPC1) ;
}
Et ensuite le fichier Make :
# Makefile pour TRAKR jouet
# Projet Trakr
TRACKR_PATH = c: / Trackr
Nom_programme = relaycontrol
PRETTY_NAME = relaycontrol
OUTPUT_PATH =. / intermédiaire
Nom_sortie = $(OUTPUT_PATH) / .elf $(nom_programme)
INTERNALS_PATH =... / Composants internes
SOURCES = app.c
S_OBJECTS = $(OUTPUT_PATH)/app.o
OBJETS = $(S_OBJECTS) $(INTERNALS_PATH)/trakr.a
SHELL = sh
CC = bras-elf-gcc
AS = bras-elf-as
BIN = bras-elf-ld
LD = ld-elf-bras
TOPMEMORY = 0XFFE7C000
CFLAGS = - O0-J’AI... / Interne/Include-j’ai... / Composants internes-mur - gstabs +
TARGET_FLAG = - mcpu = arm926ejs - CMPAS-32 - mlittle-endian - specs=specs.semi
LDFLAGS = -T... /Internals/WJ_APP_8M.LD -Wl,--defsym-Wl,__stack_base=$(TOPMEMORY) -Wl,-Map -Wl, $(basename $ - gcc-g-s-Shared-o-nostartfiles-statique
tous : pré-compilé postgénération $(OUTPUT_NAME)
$(NOM_SORTIE): $(OBJECTS)
"Liaison... "
« Créer fichier $
-u _start -o $@ $(INTERNALS_PATH)/trakr_start.a $(OBJECTS) $(TARGET_FLAG) $(LDFLAGS)
$(OUTPUT_PATH)/app.o:app.c Makefile
"Compilation $<"
-c -o "$" $< » $(TARGET_FLAG) $(CFLAGS)
. FAUX : nettoyer postgénération tronçon préalable
nettoyer :
$(RM) -f $(nom_programme) .bin
$(RM) -f « $(PRETTY_NAME) .bin »
$(RM) -f $(OUTPUT_PATH)/app.o
$(RM) -f $(OUTPUT_NAME)
$(RM) -f $(MKDEPFILE)
postgénération :
bras-elf-objcopy - O binaire $(OUTPUT_NAME) « $(PRETTY_NAME) .bin »
[ -d "E:/" ] ; puis \
CP « $(PRETTY_NAME) .bin » e:/APPS / ; \
FI
tronçon :
# Fin du Makefile
Assurez-vous que le Trakr est hors tension et connectez-le à votre ordinateur en utilisant le câble USB jaune fourni avec la Trakr. Copiez relaycontrol.bin dans le dossier APPS dans le dossier de Trakr. Déconnectez le Trakr de votre ordinateur et allumez le Trakr. Allumez le Trakr distant, cliquez sur le bouton "home" et sélectionnez relaycontrol dans le menu. Utilisez contol distant de la Trakr pour conduire le Trakr à une cible. Objectif caméra de la Trakr directement à la cible et appuyez sur le bouton A sur la télécommande pour lancer des fléchettes en mousse sur la cible.
Félicitations ! Dans ce Instructable vous avez appris comment pirater l’espion vidéo Trakr. Vous avez appris comment télécharger et installer le compilateur de langage C pour le Trakr. Vous avez appris comment compiler un programme simple et installez-le sur le Trakr et puis exécutez ce programme simple. Ensuite, vous avez appris à ouvrir le Trakr, fixer les broches du cavalier aux connexions GPIO sur le circuit principal de le Trakr. Vous avez appris comment fonctionne un relais électronique, ce à quoi ressemble le diagramme de scematic électronique pour relais et ce qui ressemble à un diagramme de circuit électronique réelle dans laquelle le relais est utilisé. Vous avez appris comment faire des câbles de conversion pour connecter le Trakr à des appareils externes. Vous avez appris à faire une plus grande plate-forme de chargement pour le Trakr et monter une plate-forme de lanceur de missiles de mousse sur la plate-forme de chargement de Lego. Vous avez appris à puiser dans les blocs d’alimentation de 9 v et 5 v de la Trakr. Aussi, vous avez appris comment utiliser le relais électronique pour contrôler un lanceur de missiles de fléchettes mousse. Enfin, vous avez appris à écrire et compiler un programme à tirer des missiles depuis le lanceur de missile de mousse et installez-le sur le Trakr et puis exécutez le programme.