Propeller Autopilot (5 / 13 steg)

Steg 5: En anteckning om Spin



jag vet att när det gäller microcontrollers, majoriteten av detta forum är tillägnat arduino. Även om arduino inte är din Rekommenderad mikrokontroller, förtjänar det alltid en nod-av-den-huvud för dess tillgänglighet, och omfattande bibliotek utveckling.
Oavsett, har detta projekt utvecklats med propeller chip, som är mest lätt skriven i Spin.
Detta är en bra tid att observera Parallaxs välvilja mot öppen källkod. Propeller chipet är nu helt programmerbara i C/C++ tack vare skapandet SImpleIDE. Majoriteten av detta projekt skrevs SimpleIDE på grund av dess användarvänlighet installera till Linux, och för accesiblity till comunication portar.

https://sites.Google.com/site/propellergcc/documentation/simpleide

Medan jag föredrar att koda detta projekt i C++ (för användning av 2D arrayer, och för en ytligare inlärningskurva) kommer alla exempelkod jag har skrivit för detta projekt att snurra. Detta har gjorts för att maximera funktionalitet innan tävling.
Spin: Förbi värde
Passerar variabler av värdet i Spin är mycket lik c ++. Den enda stora skillnaden är att när du deklarerar en lokal variabel i spinn, inte ge dig namnet en typ, (dvs byte, word, long). Detta är vilseledande eftersom det gör det verka som Spin har dynamisk minnesallokering; för allt jag kunde säga, detta är inte fallet.

Spin: Passera genom hänvisning
Passerar variabler i Spin är relativt lätt. Det är dock olika från C++ i som du inte klarar en pekare, du bara passera minnesadressen av värdet, och dereference adress inom funktionen. Jag använde denna metod för att skicka parametrar omfattande samtidigt utveckla olika vector math funktion. I följande exempel fyller vi varje variabel i båda matriser med nummer 1. Minnesplatser hämtas med den "symbol och minne platser är avrefererade genom redeclaring variabeltyp och sätta variabeln i"[]":

Spin: Float matematik
Float matematik spinn är jätte jobbigt. Jag hittade fyra olika bibliotek för att använda float matematik spinn, de använder olika antal kuggar och köra vid skillnaden hastighet, och är ganska självförklarande. En sak värd att notera: om du är deklarera en konstant eller variabel till ett specifikt värde direkt i koden, och du tänker använda flyttalsoperationer, måste du se till att du sätter ett decimaltecken i slutet av varje nummer.

Spin: Särskilda register
Det finns en hel del särskilda register i Spin. Jag kommer att köra igenom några av dem här, men om du verkligen menar allvar med propeller chip, du bör definitivt läsa Versionsfakta ansökan, samt ladda ner en kopia av handboken till din dator. De flesta av dessa register kommer att användas i kodexemplen på nästa steg.

DIRA: Detta register avgör vilken IOs på propellern chip utgångar och ingångar. Du kan skriva till dessa register med binär, decimal eller hex. Det mest intuitiva sättet, men är binära. Varje bit i registret representerar en av propeller 32 IOs. Tilldela en 0 eller 1 till det lite tilldelar det IO som en ingång eller utgång.

CTRA/CTRB: Dessa två register ställa counter lägen används av varje timer. Vi använder två olika räknare beroende på om vi mäta en puls längd, eller skriva en.

PHSA/PHSB: Dessa register är där det ackumulerade värdet genereras av våra räknare faktiskt lagras. På dess mest grundläggande lagras antalet avverkade klockcykler här.

FRQA/FRQB: Dessa register innehåller en faktor som skalar disk varje gång den lagrar till PHSA/B.

Om allt detta prat om timers och counter lägen är obekant för dig, bör du definitivt läsa Although det inte kan vara helt vara nödvändigt, jag skulle starkt rekommendera läsa igenom alla propeller counter lägen. Med hjälp av räknaren ordentligt ger dig otrolig kontroll över lägsta-nivå-IO funktioner och gör att du fudge dig igenom nästan alla digitala kommunikationsprotokoll:
http://www.parallaxsemiconductor.com/an001

Se Steg
Relaterade Ämnen

Båt Autopilot - baserat på Arduino

Här är hur man bygger en autopilot som kan styra en RC båt till waypoints! Det är enkelt att bygga, baserat på den populära Arduino plattformen och bra för amatörer som vill ha lite lödning övning! Med denna autopilot, kan en RC båt gå långa sträckor...

Programmera mikrokontroller Propeller

The Propeller är en mikrokontroller från Parallax, samma killar som gör den grundläggande stämpel. Den finns i en genomgående hål 40 pin DIP, är snabb (120 MIPS) och går för $8.Det är särskilt användbart för att skapa Hi-kvalitet ljud, multi-tasking...

Laser Cut Propeller för RC flygplan och drönare (5 "x 4")

Du vet de gammaldags trä propellrar de brukade använda på flygplan?Hur awsome skulle vara det att ha dem som driver din RC flygplan eller drönare!I detta instructable jag leder dig till produktion proces av just detta; 5 x 4 tum trä propeller. Propel...

Magnetiska propeller balancer

Så du har spenderat en massa pengar på din diy quadcopter (eller någon multirotor) och vägrar att ge något mer, men du behöver fortfarande en propeller balancer. Balanserad propeller är mycket om inte viktigaste för multirotors.Gissa vad, kan du göra...

Bygga en POV, Propeller klocka motor

under tiden Propeller klocka av Bob Blick är känd lugnt bra i DIY samhällen http://www.bobblick.com/techref/projects/propclock/propclock.html .Vissa människor gör galna saker http://www.ledcontrol.narod.ru/eng/index.htm .Ett problem att bygga en kloc...

Gratis elektrisk Propeller cykel Mod

Uppdatera Instructable test ride video med länken nedan.Video av cykel och Propeller test.Jag ville sätta en elmotor på min cykel. Jag ville inte bråka med en kedja och drev så jag bygga en elektrisk propeller cykel. Det är lätt att installera och ta...

Klassiska propeller

Bygga en klassisk propeller. Kom ihåg din leksak från din barndom. Ha kul byggnad den klassiska propeller med dina barn!Steg 1: Saker du behöver: Behöver du ett block av trä och en dowel av dessa storlekar.Steg 2: dra: Dra på blocket följande.Steg 3:...

En anpassad sköld för Propeller ASC - Infra-röd avlägsen kontroll- och flera kuggar!

i mitt första projekt har vi lagt till en 2-line LCD-display till Arduino Shield kompatibel (ASC) styrelsen.( )I detta projekt kommer vi också att införa användning av flera kuggar, en unik funktion av Parallax Propeller chip.LCD-Display:Displayen är...

Bowser Koopa Clown bilmodell med ljudeffekter, lampor, & propeller. Tillverkad av gamla kakburken.

Verktyg som behövs:SkyddsglasögonavbitareknivlimpistollödkolvDrillMaterial som behövs:något formad som clown bilen (jag använder en gammal kakburken med kork botten)Bowser leksak (jag köpte detta en & sågade honom under hälften)Wirepersonliga batteri...

Bygga en enkel RC Motor/Propeller dragkraft mätare

jag har byggt upp och flyger radiostyrda flygplan för ungefär två år nu och varje gång ett tag jag vilja experimentera lite. Jag hade idén att använda två propellrar på samma motorn för att se vilken effektökning som jag kan få och vad de behandlande...

En gratis, snabb, lätt och effektiv propeller (Una hélice gratis, rápida...)

jag behövde för att placera ett litet luftar extractor i badrummet.Jag hade två eller tre lågenergi-motorn, men propellern var knuten till en av dem var inte bra. Andra av dem. det är alltför låg effekt.(Yo necesitaba colocar un pequeño extractor de...

Hur man gör mini Rocket Launcher missil Bazooka fast Propellant HD videokvalitet

följer min Youtubekanal: http://www.youtube.com/user/educatetowin?feature=mheeHemsida: http://www.educatetube.comVärd: SipskiHur man gör en mini rocket launcher eller fast propellant missil bazooka. Alltid bära skyddsglasögon och göra experimentet ut...

Motoriserade flyga Propeller

Motoriserade flyger propellern kan flyga upp till 15' i luften, eller ännu längre vågrätt. Det är lätt att bygga, oändligt underhållande, och ser ut som om det ska vara förpackade som en leksak. Allt du behöver är grundläggande hushållsbruk verktyg,...

Propel-a-Buds

När du tänker på saker som till synes dansar till musik tänker du förmodligen på människor på ett dansgolv. Men skulle du anser en enkel RC Quad-copter motor skulle dansa också?! Tja de är fullt kapabel att rotera, vibrerande och producerar ett litet...

Propeller klocka (från en gammal hårddisk)

gamla HDD förvandlas till en Propeller klocka.PIC16F876A + magnetfält sensor för att räkna antalet rotationer....

Propeller-drivna bil

Om du gillar detta projekt, då uppmanar jag dig att köpa min bok, Gummiband ingenjör. Den är full av mer awesome och ursprungliga projekt tillverkade av hushållens hårdvara. Du hittar den överallt där böcker säljs.Allt jag gör: LanceMakes.comDenna bi...

Propeller Powered Skateboard

Skateboarding blir mer spännande så jag bandet en modell flygplansmotor till slutet av en skateboard.Jag hade en fantastisk tid med detta projekt. Det var ganska lätt att sätta ihop och en hel del roligt att testa. Jag ser fram emot att spela med det...

Gratis Propeller cykel Mod Update

Detta instructable omfattar vissa förbättringar i propeller cykel mod och en video av testet rida med några mer info och hur cykeln utförs.Hittar du först instructable på länken nedan.Steg 1: Testa rida Med en 10A door bell switch, vissa 14 gauge trå...

Elektrisk Propeller motorcykel att köra snabbt

Hej killar idag jag ska visa dig hur man gör mycket spännande elektrisk motorcykel som drevs av propeller, jag är alltid intresserad av att använda återanvända material och göra något nytt och dessa intressanta idéer kommer i mitt sinne för att titta...