Luna Mod Looper grundläggande Stamp2 Version (4 / 7 steg)

Steg 4: Vet din mcu gränser och ansluta rekord tryckknappen



Du kanske tror att ansluta lysdioder skulle vara nästa men jag tror du behöver ta reda på hur den loopande delen av programmet fungerar innan du ansluter lysdioder. De måste vara synkroniserad med tempot. Synkroniserar lysdioderna var faktiskt en av de problem som gav mig det mest problemet. Det hade något att göra med mer än ett booleskt uttryck i mina uttalanden om relaterade till lamporna men jag kan inte berätta varför. Mina uttalanden om ELSEIF innehöll två booleska uttryck och det var inga problem tack vare det. Nu, tillbaka till vad som verkligen händer i steg 4.

Varning!: innan du går längre du behöver veta att alla mcu har begränsningar på hur mycket ström de kan leverera och sjunka. Nuvarande är hur mycket ström avslutar den PIN-kod och det går i vissa externa enheter. Diskbänken nuvarande innebär att strömmen flödar in i stiftet och genom mcu att marken (Vss i detta fall). Gränserna för BS2 är följande (dubbelkolla de "grundläggande stämpel Syntax och Reference Manual," sidan 14, tabell 1.2): varje stift kan sjunka 25 mA och källa 20 mA. Varje grupp av pins, P0 - P7 och P8 - P15 bör inte kollektivt sjunka mer än 50 mA eller källa 40 mA om använder en extern 5 V regulator. Dessa siffror är diskbänken 50 mA eller källa 40 mA för alla I/O stift om du använder den inbyggda 5 V regulatorn.

OM DU ÖVERSKRIDER DESSA GRÄNSER KOMMER DU ATT SKADA DIN MCU! Ibland du förlorar bara en i/o pin men värre saker kan hända. Detta innebär att du behöver använda din Ohms lag, V = IR.

Du har förmodligen märkt på denna punkt som rekord knappar och tempo potten är på P15 och P14, respektive och resten av i/o-stiften. Detta beror på informationen i varningen ovan.

På med showen:
Knappen Spela in måste anslutas. Anslut en jumper tråd från P15 till PB0 i avsnittet tryckknapp om du använder en PDB. Om inte Anslut sedan en NOPB som visar i schematiskt nedan. Detta råkar också vara det sätt som det preliminära budgetförslaget har dess tryckknappar wired utom allt kan anslutas på det preliminära budgetförslaget, inte bara P15.

Titta på bilden för att se:
Du kan se den gröna ledningen som den bildar en båge över den Lödfritt set av brödunderläggen från P15 till PB0 på det preliminära budgetförslaget.

För att få tryckknapp till verk du kommer sannolikt använda kommandot knappen. Min instruktion ser ut som följande:

KNAPPEN recBtn, 0, 255, 0, btnData, 1, registrera

Kontrollera den "grundläggande stämpel Syntax och Reference Manual" för en grundlig förklaring. Här, recBtn är den PIN-kod #, 0 är Downstate, 255 är förseningen, 0 är hastigheten, btnData är arbetsytan, 1 är TargetSate och post är adressen. RecBtn är 15 för P15 och 255 används eftersom jag inte vill ha en auto-repeat men fortfarande vill ha debounce. Ränta är 0 eftersom jag inte vill ha någon mätning av cykler. Jag gav btnData bara ett Byte av variabel utrymme eftersom siffrorna bör vara låg ändå. TargetState är 1 eftersom jag vill att knappen ska utlösa BS2 in inspelningsläge när det trycks fortfarande. Ställer in det till 0 skulle orsaka att det ska gå att spela in när den släpptes. Adressen är rekord. Posten är en subrutin som utlöses när knappen trycks.

Här är en utmärkt plats att öva programmeringstekniker. Du behöver inte skriva alla färdiga koden på en gång här. Din post subrutin kan vara bara en eller två DEBUG uttalanden. Därigenom kommer att berätta att din knapp instruktioner arbetat och skickade BS2 i inspelningsläge. Om du försöker skriva all kod på en gång så är du ofta frustrerad på grund av de problem som måste sorteras först.

Item en) skriva bara ett felsökningsuttryck såsom:
FELSÖKNINGSLÄGE "du är i posten"

Punkt b) Lägg till en andra och kanske en tredje uttalande enligt följande:
FELSÖKA? potFreqVal
FELSÖKA? potTempoVal

Punkt c) när du ser rätt ord att dyka upp i din DEBUG Terminal du vet att du är i insp-läget men du vet också att programmet använder variabler från två krukor du har för frekvens och tempo. Nu kan du arbeta på att få resten av inspelningsläget att arbeta, att se till att frekvenserna placeras i matrisen.

För detta steg beslutade jag att använda en serie om ELSEIF uttryck. Den svåra biten är att få ett bra utbud ställer in och göra säker du booleska uttryck har rätt nummer för varje not. Jag beslutade att använda bara en komparator för varje uttryck i stället för två.

En komparator: <>, som står för mindre än och större än respektive
Två kontrollapparater: < =, > = som står för mindre eller lika till och större än eller lika med respektive

Jag använde en kontrollapparat som jag tänkte att det skulle ta lite längre tid att utvärdera uttrycket med två kontrollapparater i stället för en komparator.

Observera att i den slutliga versionen av programmet förutsatt att det finns tre spänner av anteckningar som finns i tre subrutiner. Du måste nödvändiga koden efter om ELSEIF uttalanden att ta sorterade frekvensvärde och spela det så kan du höra de anteckningar som du väljer genom att vrida på potentiometern. Om du väntar med dessa satser tvivlar jag post subrutinen fungerar som planerat. För det första två spänner av om ELSEIF uttalanden innehåller den sista ELSEIF uttalandet en instruktion att gå till nästa spänna av anteckningar med hjälp av kommandot GOSUB Subroutine_Name.

Observera att knappen anvisningen används i andra (av tre) tider här. Detta gör personen att trycka på knappen när som helst och har avfarten program inspelningsläge och växla till uppspelningsläge. Faktiskt, BS2 faktiskt kommer köra igenom alla sekventiella koden innan kommer på knappen anvisningen så du kan vänta kort innan ändringen sker.

Viktigt tips: Det finns några funktioner med Basic Stamp redaktör IDE att du bör bekanta dig med hjälp av. Två är mycket användbara Syntax Check och minne karta. Jag säger det här eftersom när jag skrev om ELSEIF kapslade uttalanden jag fick reda på att du bara kan ha 16 ELSEIF uttalanden Förutom öppnandet om-satsen. Med hjälp av minnet kartan tog min uppmärksamhet. Den Syntax Check kommer att göra samma sak. Om du har mer då visar det när du använder dessa funktioner. Minne karta oss bra att ta reda på hur mycket varierande utrymme du har kvar. Du kan också vet hur mycket mer utrymme du har att skriva kod. Syntaxkontrollen är bra att köra innan du försöker köra ditt program. Det kommer att låta dig veta mycket snabbt om någon syntax är i ordning utan den extra tid försökande till tillträde mcu. När du spenderar tillräckligt tid programmering mcu kommer du att uppskatta båda funktionerna.

Se Steg
Relaterade Ämnen

Arduino kompatibel Luna Mod Looper

The Luna Mod Looper, i princip kan du registrera en sekvens med en potentiometer för att styra tonhöjden för noteringen, och sedan spela upp den tillbaka och lägga till effekter. Ända sedan jag såg videor av Luna Mod som spelas, ville jag bygga min e...

Luna Mod Looper

här är några bilder från en Luna Mod jag byggt några perf ombord. Det körs på PICAXE 08m och är väldigt cool.Den ursprungliga designen är från göra: tidningen och är av Brian McNamara....

Garrys mod projekt: hur man laddar ner addons, hur man installerar grundläggande addons, hur man gör en katapult

precis som jag har lovat... jag har nu börjat på en ny kollektion av garrys mod projekt som du kan göra, alla med värdet ut i grupper om 3... jag kommer att fortsätta att göra dem och det skulle hjälpa om du kunde ge mig feedback på hur de sätts ihop...

Skeksil, mörka Crystal Chamberlain (How-to version) del #1, struktur och grundläggande form.

Innan jag börjar, det är värt att notera att detta projekt var varken snabbt eller billigt. Det tog flera månader av hårda arbete för att nå ett stadium som jag kände att projektet var fullständig.Som sagt, är att slutföra ett projekt av denna omfatt...

Bygga Quadcopters, drönare och Uav: s-en förklaring och lätt bygga av en grundläggande Quad.

Så du är intresserad av Quadcopters, Quadrotors, UAV, drönare och vad de kallar dem.Men vilka är de består av, och varför? Kan jag bygga en eller är de för mer avancerade elektroniska typ individer.Väl aldrig rädsla. Jag presentera en grundläggande ö...

Grundläggande säkerhet Guide när det finns nr El

om det finns en sak vi har sett om orkanen Sandy är att det kan gå så mycket sämre utan el. Våra liv är beroende av El att vi blir så begränsad, även till ett stillestånd när det finns ett strömavbrott. Det är inte som i Bangladesh där människor uppl...

Grundläggande raden efter Robot med Arduino

09/07/2015Det har varit några år eftersom vi Ursprungligen postat denna grundläggande linje följande Robot med Arduino handledning, och det verkar så många människor tyckte att det bra att vi ska skicka en uppdatering som löper nuvarande Arduino bibl...

Grundläggande elektronik

att komma igång med grundläggande elektronik är lättare än du kanske tror. Detta Instructable kommer förhoppningsvis att avmystifiera grunderna i elektronik så att alla med intresse i att bygga kretsar kan slå i marken kör. Detta är en snabb översikt...

Linje följande Robot med grundläggande PD (proportionell-derivat) kontroll

Detta Instructable kommer att visa hur PD (Proporational-derivat) kontrollen i en enkel rad efterföljare. I exemplet används rad efterföljare utvecklats i grundläggande linje efterföljare Instructable:Följande komponenter kommer att användas:1. troll...

Hur du använder autohotkey och skriva grundläggande skript för det.

i detta instructable, lär du dig hur du använder autohotkey och hur man gör grundläggande skript.Steg 1: Hämta och installera Autohotkey Först, du måste gå till här och hämta Autohotkey. Installera det och starta upp.Steg 2: Kan lära sig att skriva s...

Mjuk ursprungliga Xbox utan Action Replay (täcker grundläggande till avancerade steg) Länkar fullt uppdaterad

i detta instructable jag kommer att försöka mitt bästa att ta ut den stress och frustration av många människor som vill mjuk deras ursprungliga Xbox år 2011. Jag hittade försöker några av dessa andra tutorials något försvårande eftersom:1. länkar, fi...

Lektion 4: Grundläggande Arduino Pt. 2: Introduktion till kodning

Välkommen tillbaka, ivriga elever. För de nya till denna serie, se mitt tidigare lektioner i grundläggande elektroteknik. För de inte nya, förbereda sig för att ange en värld av kodning, där du kan ändra hur din krets fungerar via en dator. Detta är...

Arduino nybörjare och grundläggande elektronik Kit Primer

lärde jag mig att en av mina systerdöttrar hade ett intresse för programmering. Hon arbetade med robotics på gymnasiet och har en sommar praktikplats där de hade Arduinos. Jag tror att hon kunde låna en Arduino för att experimentera med hemma men var...

Bygga en bågreaktorn med grundläggande verktyg och kompetens

jag trodde det skulle vara häftigt att gå som Tony Stark för Halloween, och jag vände mig till Instructables för idéer om hur man bygger en bågreaktorn. Problemet är att de bästa och mest korrekta Arc reaktorerna på webbplatsen som Honus' och Kyling...

Grundläggande mänskliga skanna med Kinect & ReconstructMe konsolen

detta instructable kommer att täcka den grundläggande processen för att göra en 3D skanning av en mänsklig kropp med hjälp av XBOX 360 Kinect, en Windows-dator och programvara ReconstructMe (konsolen upplaga).ErkännandeNicolas Brunet gjorde en underb...

Justerbar utarbetandet bord med grundläggande verktyg och material

jag har spelat runt med tanken på att få mig en liten utarbetandet bord, som jag hittar den justerbar vinkeln ganska bekväm för ett antal olika saker: Rita, läsa, skriva, arbetar med tangentbord/mus, etc. Först testade jag det ut genom att bara sätta...

Grundläggande remskiva mekanismer

Från tank slitbanor till cykel redskap till fiske linjer, som remskivor används överallt när det gäller mekaniska transmissioner. Alla typer av remskiva mekanismerna består av någon form av flexibelt bälte (kedja, kabel, rep, etc.) vrida runt omkrets...

Grundläggande virka garn och kedjan armband handledning

göra denna lätt blandteknik virka armband i bredvid nolltid med metall kedja som raden foundation. Det kräver endast grundläggande enda virka. Även om du inte vet hur man virka, visas följande steg hur du kommer igång.Detta projekt är ett bra garn st...

Grundläggande huvud Pin

har du någonsin jobbat på ett smycken projekt bara för att finna att du har slut på det särskilda klämmer fast huvud krävs för jobbet? Det är för sent att chefen för bead shop och online kommer inte att leverera till 3 arbetsdagar. Vad gör du?Genom a...