Lätt Arduino menyer för rotationsencoder



Roterande pulsgivare med centrum - tryckknappar är cool ingång hårdvara för projekt, särskilt om du vill kunna bläddra igenom menyer och väljer alternativ. Förhoppningsvis detta Instructable kommer att ge dig självförtroende att prova grundläggande menysystem och kombinera det med en rotationsencoder att ge en professionell känsla till ditt nästa projekt!

Varför menyer och roterande pulsgivare behöver koden

Jag ville ha en meny i ett kommande projekt och använda en roterande kodare med en centrum tryckknapp som min input hårdvara. Detta är verkligen liknar den LCD-styrenheter för RAMPER och Arduino MEGA 3D-skrivare. Rotary encoder tillåter mig att rulla genom menyalternativen, dvs navigera i menyn, Välj undermenyer och också ändra värdena inom sub-sub-menus/inställningar - mycket mångsidig för en hårdvara gränssnitt! En mikrokontroller för att hantera allt detta och microcontrollers behöver instruktioner, AKA koden!

Andra alternativ

Problemet jag hade med existerande Arduino menyn bibliotek och menykod är att de var alltför komplicerade för enkla menyer. En annan nackdel med många alternativ var att koden var avsedd för LCD-skärmar och momentan tryckknappar, inte rotationsencoder och kan anpassas till andra uppvisning produktionerna. Dessa menyer var inriktad runt att välja mellan ett litet antal lägen och öka värdena förhållandevis långsamt. Vi vet att roterande pulsgivare är en bra hårdvara alternativ eftersom de har råd relativt snabb indatavärdet ändras samtidigt behålla fin kontroll på låg hastighet. Jag ville skriva koden som skulle tillåta entydig högsta nivå menynavigering men också att du kan snabbt bläddra igenom ett stort antal värden inom varje sub-menu/inställning, att utnyttja styrkan i rotary encoder.

Strategin

Jag beslutade att följa några råd du använder if() uttalanden för en enkel menystruktur och hålla den skiss-baserade. Den resulterande kod bygger på min tidigare Instructable som syftade till att på ett tillförlitligt sätt läsa rotation pulser och riktning. Vänligen kolla bakgrunden.

I denna skiss, skulle vi lägga till läsning av knappen centrum på vridomkopplaren axeln, med hjälp av kod att Nick Gammon utvecklad på inspelningsknappen statliga förändringar med debouncing och utan att förlita sig på den Arduino delay() funktion som förhindrar mikrokontroller köra andra kod och eventuellt införa märkbar fördröjning i vår skiss, e.g. långsamt skärm uppdateringsfrekvens. Knappen Ändra statuskod är mycket mer användbar än att bara läsa digital logik högt eller lågt när du använder en knapp välja något en gång, som en menyn alternativ, eftersom det kan hjälpa dig att förhindra oavsiktlig flera val för varje knapptryckning.

Låt oss ta en titt på vad du behöver ställa in för att använda denna exempelkod i steg 1.

Se Steg
Relaterade Ämnen

Kodgenerator för anpassade Android/Arduino menyer att slå Arduino utgångar på och av. Android/Arduino för nybörjare. Absolut ingen programmering krävs

Uppdatering: användare frågade för undermeny support. pfodApp alltid stött sub-menyerna men jag har lagt undermenyer till pfodDesigner. Den instructable Design A Custom menysystemet visar hur du använder pfodDesigner för att bygga en meny med underme...

Designa en anpassad meny System--Android/Arduino menyer för nybörjare--absolut No programmering krävs

IntroduktionDetta instructable visar du hur använda den gratis pfodDesigner finns på GooglePlay för att utforma ett Android menysystem med undermenyer för Arduino kompatibla enheter.Handledningen är lämplig för nybörjare. Ingen kodning erfarenhet krä...

ARDUINO stegmotor kontrollerad med rotationsencoder och l293d eller SN754410NE chip

Stepper motor är mycket användbara för massor av diy-projekt. I de flesta fall mikrokontroller styra alla förflyttningar av nummerlistan, men i vissa fall kan du manuellt styra stegmotor för att ange en startpunkt, rotera en kamera eller finjustera n...

DIY Home Automation för nybörjare. Absolut ingen kodning eller lödning behövs. Android/Arduino för att växla saker på och av

Denna instructiable är att den absoluta nybörjaren. Om du kan hantera en vass kniv utan att skära kan fingrarna av dig göra och anpassa denna hemautomation controller.Dessa instruktioner är också on-line på www.pfod.com.au under Android / Arduino för...

Arduino och modulen Noritake 24 x 6 VFD (Vacuum Fluorescent Display)

först vill jag tacka Noritake för VFD-modulen för jag tycker det är ganska cool jag frågade dem för en att arbeta med och de gav den till mig.http://www.Noritake-elec.com/default.htmVFDs (Vacuum Fluorescent Display) var och används i stora raseri av...

Tillförlitlig, säker, anpassningsbar SMS fjärrstyrning (Arduino/pfodApp) - ingen kodning krävs

Uppdateringen: 19 maj 2015: användning av pfodParser bibliotek Version 2.5 eller senare. Det fixar en rapporterade problemet inte att tillräckligt med tid att ansluta till nätverket efter att ha slagit upp shieldIntroduktionHur är pfodSMS fjärrkontro...

Hemautomation - lägga till reläer till Arduino

Hur du väljer reläer – handlar om makt.När du väljer ett relä för anslutning till din Arduino måste du övervägaen) makt (spänning och ström) vad du vill slå på och av ochb) makt (spänning och ström) krävs för att driva reläet (dvs. att vitalisera rel...

Interaktiv Design och kodgenerering för anpassade Android menyer för Arduino--nej Android programmering krävs

Uppdatering: Kolla in den nyare InstructableAndroid/Arduino för nybörjare - Design anpassade Android menyer att slå Arduino utgångar på och av. Absolut ingen programmering krävssom genererar alla Arduino koden med den senaste versionen av pfodDesigne...

Arduino - rotationsencoder enkla exempel KY-040

Hej världen! Detta är ett exempel på hur du använder KY-040 Rotary encoder.Dess mycket grundläggande men om din nya till arduino eller kunde inte hitta någon kod, så har du något att börja med.eftersom det finns lite dokumentation om Keyes sensor kit...

Förbättrad Arduino Rotary Encoder behandlingen

Roterande pulsgivare är stor indataenheter för elektronik projekt - förhoppningsvis detta Instructable kommer att inspirera och hjälpa dig att använda en i ditt nästa projekt.Varför skriva rotationsencoder kod?Jag ville använda en låg kostnad rotatio...

AMSC - Arduino Multimedia och Skype Controller

AMSC - Arduino Multimedia och Skype Controller* Tänk dig att du tittar på en film och, från ingenstans, någon ringer dig på Skype och därför får du destracted och du behöver spola tillbaka filmen koncentrera oss igen. Den sorten saker shouldn´t hända...

Montering av "Kloka klockan 2" (Arduino-baserad väckarklocka med massor av extra funktioner)

denna handledning visar hur du monterar kitet för Wise klockan 2, ett öppen källkodsprojekt (hårdvara och mjukvara).En komplett Klok klockan 2 kit kan köpas här.Sammanfattningsvis är detta vad Wise klockan 2 kan göra (i den aktuella öppna källa mjukv...

Bygga IllyClock - baserade Arduino väckarklocka i en kaffe kan

uppdaterad augusti 4, 2011En strömlinjeformad version är nu beskrivs här.Syftet med detta projekt är att bygga en väckarklocka som liknar den som presenteras i videon nedan.Bredvid inhägnad, den ursprungliga inslaget i IllyClock visar tiden i färger:...

LED Dawn / Sunrise väckarklocka, nattlampa & säkerhet ljus - Arduino kompatibel

som nätterna förlängs successivt under hösten 2011, jag upptäckt glädjen med Arduino och trodde att det skulle vara ett bra sätt att genomföra något som jag har velat ha en lång stund - ett skonsamt sätt att vakna upp på en vintermorgon. Tyvärr, det...

Baserade Arduino House värmare Controler med SMS användargränssnitt

projektet innehåller instruktioner och koden för att bygga en uppvärmning controller för ditt hem eller avlägsna land hus, som kan kontrolleras och övervakas av GSM via SMS-kommandon. Jag började att utforma det så vi behövde en pålitlig och Register...

Ett trådlöst kontrollerade, Arduino-Powered anslagstavla

bygga själv en trådlöst styrd, Arduino-powered anslagstavla!Här är ett enkelt projekt som skapar en trådlöst programmerbart anslagstavla. XBee moduler använder för att ge en trådlös seriell länk mellan datorn och enheten. Du interagerar med den via e...

Arduino/App kontrollerade skrivbord ljus

För detta projekt jag ville ha något som skulle tillåta mig att lära mig mer om elektronik/mjukvara, något jag inte riktigt fått in ännu... Jag bestämde mig för en ljus skulle vara en bra plattform för detta.Designen jag kom med var för en uplighter...

ATtiny seriell monitor använder arduino genomgång

Allllllllllright dudes och dudets. Här är whats upp, vi kommer att göra attiny och arduino bästa av vänner.Om du någonsin har arbetat med kapacitiv växlar vet du hur mycket det gör du vill krossa ditt ansikte i en vägg... Nu föreställa sig du har ing...

Anpassade Arduino MIDI Controller

Hej och Välkommen till detta instructable om hur man bygger en anpassad, Billigt och enkelt USB MIDI-controller, baserat på Arduino. Den bästa nyheten: inget krångel med USB-till-MIDI-gränssnitt eller programvaruverktyg som Hårlösa MIDI, bara plug 'n...