Hacking Spy Video Trakr (21 / 22 steg)

Steg 21: Använda GPIO stiften till blixt lampor (lysdioder)



Testet att styra en enhet via GPIO anslutningarna är att växla lysdioder på och av genom att trycka på knapparna på TRAKR fjärrkontrollen. Jag använde en av CDROM audiokabeln som jag nämnde ovan. Jag trådbundna komponenterna direkt till kabel; Jag trodde verkligen det var värt ett kretskort. 100 ohms motstånd sjunker spänningen till 1,6... perfekt för lysdioderna.

Du kan se hur det var lödda i den övre vänstra delen av bilden. När du springa den trakrmotorcontrol app och ingen knapp trycks, ingenting lyser upp. När du trycker på knappen A, tänds den gröna lysdioden; När B-knappen trycks, tänds den röda lysdioden.

C språk kod:

////////////////////////////////////////////
LED blixt program för Spy Video TRAKR
Programmet söker igenom för att se om knappen A var
pressade på TRAKR remote och uppsättningar GPC0 hög
och GPC1 låg att skicka ström genom LED
i bias riktning framåt (påslagen).
//
Om B-knappen trycks, ställer GPC0 låg
och GPC1 hög att skicka ström genom
LED i omvänd riktning (avstängd).
///////////////////////////////////////////

#include "svt.h" //include officiella API
#include "JAPI.h" //include "Hemliga sås" API

#define GPC0 (1 << 0) //bitmask för pin GPC0 = 00000001
#define GPC1 (1 << 1) //bitmask för pin GPC1 = 00000010
#define GPC2 (1 << 2) //bitmask för pin GPC2 = 00000100
#define GPC3 (1 << 3) //bitmask för pin GPC3 = 00001000
#define GPC4 (1 << 4) //bitmask för pin GPC4 = 00010000
#define GPC5 (1 << 5) //bitmask för pin GPC5 = 00100000
#define GPC6 (1 << 6) //bitmask för pin GPC6 = 01000000
#define GPC7 (1 << 7) //bitmask för pin GPC7 = 10000000

int keyState; definiera "keystate" som heltal

void Start()
{
JAPI_SetIoOutputMode(GPC0+GPC1); //Set Utläge för stift GPC0 och GPC1
}
bool Run()
{
keyState=GetRemoteKeys(); TRAKR fjärrkontroll nedtryckt
tilldela keystate
om (keyState > 0)
{//if keystate är större än 0
IF(keyState&KEY_INPUT1)
{//Button en pressad (motor framåt)
JAPI_SetIoHigh (GPC0), //Set GPC0 pin hög (3.3V)
} annat {
JAPI_SetIoLow(GPC0); Stänga av pin GPC0
}
IF(keyState&KEY_INPUT2)
{//Button B tryckte (motor bakåt)
JAPI_SetIoHigh (GPC1), //Set GPC1 pin hög (3.3V)
} annat {
JAPI_SetIoLow(GPC1); Stänga av pin GPC1
}
IF(keyState&KEY_HOME)
{//if hem-knappen intryckt
returnera false; Detta kommer att avslutas loopen
}
}
return true; loopen upprepas tills falskt
}
void End()
{//Program avsluta - Stäng av båda stiften
JAPI_SetIoLow(GPC0+GPC1);
}

Skapa fil:

# Makefile för TRAKR leksak
# Trakr projektet

TRACKR_PATH = C:/elinagrip
Programnamn = trakrmotorcontrol
PRETTY_NAME = trakrmotorcontrol
OUTPUT_PATH =. / mellanliggande
OUTPUT_NAME = $(OUTPUT_PATH) / $(programnamn) Elf
INTERNALS_PATH =... / Internals

KÄLLOR = app.c
S_OBJECTS = $(OUTPUT_PATH)/app.o

OBJEKT = $(S_OBJECTS) $(INTERNALS_PATH)/trakr.a

SHELL = sh
CC = arm-elf-gcc
SOM = arm-elf-as
BIN = arm-elf-ld
LD = arm-elf-ld

TOPMEMORY = 0XFFE7C000
CFLAGS = - O0-JAG... / Internals/Include-jag... / Internals-vägg - 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,-karta -Wl, $(basename $ - nostartfiles-static

alla: prebuild $(OUTPUT_NAME) postbuild

$(OUTPUT_NAME): $(OBJECTS)
"Länka... "
"Skapa filen $
-u _start -o $@ $(INTERNALS_PATH)/trakr_start.a $(OBJECTS) $(TARGET_FLAG) $(LDFLAGS)

$(OUTPUT_PATH)/app.o:app.c Makefile
"Sammanställa $<"
-c -o "$" $< "$(TARGET_FLAG) $(CFLAGS)

. FALSKA: Rengör prebuild postbuild

ren:
$(RM) -f $(programnamn) .bin
$(RM) -f "$(PRETTY_NAME) .bin"
$(RM) -f $(OUTPUT_PATH)/app.o
$(RM) -f $(OUTPUT_NAME)
$(RM) -f $(MKDEPFILE)

postbuild:
arm-elf-objcopy - O binära $(OUTPUT_NAME) "$(PRETTY_NAME) .bin"
[ -d "E:/" ] ; sedan \
CP "$(PRETTY_NAME) .bin" e:/APPS /; \
Fi
prebuild:

# Slut på Makefile

När du kompilerar ovanstående kod med ovanstående gör fil, detta kommer att skapa en Trakr App fil som heter "trakrmotorcontrol.bin" och filen måste kopieras till Trakr. Se till att Trakr är avstängd och Anslut den till din dator med den gula USB-kabeln som följde med Trakr. Kopiera trakrmotorcontrol.bin till mappen APPS i mappen Trakr. Koppla bort Trakr från datorn och slå Trakr på. Växla Trakr remote på, klicka på hem-knappen och välj trakrmotorcontrol på menyn.

Trakrmotorcontrol app kan du styra många olika typer av elektriska apparater... motorer, lampor, reläer, etc.

Se Steg
Relaterade Ämnen

Hacking Spy Video Trakr II

i tidigare Instructable, "Hacking the Spy Video Trakr" ( du lärde mig att öppna upp Trakr och installera manliga headers i GPIO anslutningar på kretskortet. Du också lärt sig att skriva, kompilera och installera ett kort program på Trakr till fl...

Hacking Spy Video Trakr med Frickin' Laser balkar... Och missiler!

Artighet av CPT Hans.Jag köpte en USB-drivna skum missil bärraket, som har pan & tilt, och även en inriktning på laser! Jag driver den från den Trakr interna USB-porten, och styra det med GPIO raderna.Steg 1: Original kontrollstyrelsen var ganska sof...

Hacking Spy Video Trakr III: göra en Grabber Bot av Legos, Snap kretsar och Spy Video Trakr

i detta instructable kommer jag visa hur man använder Legos, Snap kretsar och Spy Video Trakr för att skapa en avlägsen kontrollerade gripet bot. Jag kommer att visa hur du hämtar och installerar C language compiler för Trakr. Härnäst ska jag förklar...

Spy Video Trakr: Lägg till en Missile Launcher

hedra National Robotics Week och Instructables Robot utmaningen jag lämnar några robot mönster. Denna design (för åldrarna 13-18) drar nytta av vilda planetens Spy Video Trakr, som är lätt programmerbar och utformad av dess utvecklare kan hacka.Trakr...

Spy Video Trakr: Lägg till en Lego klo bifogad

hedra National Robotics Week och Instructables Robot utmaningen jag lämnar några robot mönster. Denna design (för åldrarna 13-18) drar nytta av vilda planetens Spy Video Trakr, som är lätt programmerbar och utformad av dess utvecklare kan hacka.Trakr...

Hacka en Video Läs-högt

Hur du använder Mozilla Webmaker för att hacka en video Läs-högt för en barnbok. Detta är ett stort uppdrag för äldre elever eller en rolig aktivitet för ett yngre barn och en vuxen helper.Kolla in min slutprodukt.Steg 1: Välj din videoVälj en video...

Hur att reparera / hacka din video spelenheter bättre, med sugru

jag verkar alltid skicka nya constructable endast när det finns en tävling lol.Jag fick min gratis provpåse med sugru och jag bara inte kunde vänta att lista ut hur jag kunde använda och och pojken blev jag överraskad.Detta är ganska rakt framåt, jag...

Hacka en Video Game Controller med en Arduino för bättre tillgång (eller fusk)

Alla älskar TV-spel. Men det kan vara svårt att njuta av vissa spel om du är skadade eller handikappade och inte har den manuell skicklighet krävs för att utföra snabb knapp combos. Lyckligtvis kan vi använda en Arduino för att skicka signaler till c...

Gör en enkel Snap kretsar programmerbar Robot

i detta Instructable kommer du lära dig hur man bygger en enkel Snap kretsar programmerbar robot. Först kommer du lära dig hur man bygger en enkel krets med Snap kretsar för att förstå hur lätt det är att bygga elektroniska kretsar. Du kommer därefte...

Head Mounted Dispaly (HMD) hacka/modifiering att göra en större skärm

Hej... på min första instructables jag vill visa dig hur man hacka/ändra den monokroma HMD från vilda Planet.Denna ändring gör hela mindre och gör det du känner, att du sitter i en biograf!Nackdelen är, att du har att uttrycka det mycket nära ögat, s...

Rörelse, utlöste Spy Cam

nu kan du göra hemliga övervakning med denna "fångas under rörelse" spy video cam som registrerar hemliga video och ljud.Se det i aktion och testresultaten!Steg 1: Vad du behöver... 1. motion Sensing dörren Chime. Radio Shack del #49-4262. mini...

Google Earth Spy videoeffekt hur handledning

Google Earth Spy Video effekt hur till Tutorial - bästa bloopers är ett klick bort denna video är utformad för att visa hur du gör en falsk satellit spion video med Google Earth. inga nakna kom till skada i skapandet av denna video. Storebror ser......

Elektronisk sökare för kompakta digitalkameror

detta Instructable är specifika för att göra en elektronisk sökare för Canon S95, men förutsatt att din kamera har videoutgång kapacitet, och du kan hitta den rätta kontakten och pin-out, du kan anpassa för dina specifika behov. Sökaren är USB har up...

Omfattande Design & byggandet av Papercraft Anime peruker

detta är min första Instructible, så tänk med mig. :-)Ivrig cosplayers som jag själv, har över hela världen, länge varit frustrerad av de till synes mystiska, allvar-trotsar frisyrer som många anime och spel tecken har. Vi spenderar stora pengar på p...

Hur man gör DOUBLE STAR FLEXICUBE

Jag hade gör detta flexicube i ett försök men du kan göra det bra sedan mig efter 2 3 försök.Jag hade gjort detta efter att titta på denna video.https://www.youtube.com/watch?v=HGjGR9DfWSIJag verkligen uppskattar alla för att titta på min video och p...

Trådlös elektricitet [DIY] av hjärnan bricka

Jag hade gör denna trådlös elektricitet.För att göra detta måste duKoppartrådPVC-rörResistor 120 ohmtransistor 2N2222A9V smetenBatteri-kontaktSwitchlimpistollöda maskin och löda trådJag verkligen uppskattar alla för att titta på min video och prenume...

Pappersfisk [papper hantverk] [DIY] av hjärnan bricka

Med hjälp av papper kan vi göra något så nu ska jag visa dig hur man gör en pappersfisk.Att göra av papper fisk extremt enkelt med hjälp av steg för steg titta min video.Små barn lära sig detta och de som vill börja papper hantverk med grundläggande...

Hacka en $30 WiFi Pan-Tilt kamera - Video, ljud och Motor control med Python

I detta Instructable lär du dig att fånga upp den video, mikrofon och kontroller av $30 Kaicong SIP1602 trådlös pan-tilt kamera på Windows, Linux eller OSX! Allt rullas prydligt i python skript; Du kan använda utdata för saker som röst transkription,...

SPY HACK! Mini gömställe gjord av en penna

I denna film ska jag visa dig en underbar idé att göra en hemlig plats i en grafit trä blyertspenna med mina egna händer hemma!Steg 1: Handgjorda spion penna kan användas för att hålla av den viktiga lösenorden, passage av hemliga meddelanden till di...