Transfiguratie drukte: Controle (3 / 5 stap)

Stap 3: De "magic" achter Transfiguratie drukte besturingselement


Allermeest naar de magie is gewoon goed programmeren. De namen van de klassen worden gekozen om de leesbaarheid van de code van de FiniteStateMachine door om het even wie. We konden hebben gegeven staat voor blik en Edge voor de situatie, maar de code is gewoon moeilijker te begrijpen. Transfiguration.h is gewoon dat hetzelfde idee. Wilt u het Transfiguration.h bestand te downloaden en in uw project-bestanden toe te voegen. Dit is meestal dezelfde map als uw Ino bestand. U zal hebben om te stoppen en herstarten van de Arduino omgeving voordat het u toestaan om het bewerken van het bestand in de Arduino omgeving.

U hoeft te doen de items hieronder is alleen voor degenen die ook geïnteresseerd zijn in wat in het Transfiguration.h-bestand

Pragma eenmaal is gewoon het helpen van de compiler weten alleen gebruik dit bestand eenmaal.

Bevat bovenaan de NeoPixel, CurieIMU, CurieTime en de I2C-functies.

De vector omvatten is speciaal. Het is een verzameling van routines die u toestaan om het houden van een verzameling van dingen. In ons geval het is een verzameling of lengtes, kleuren of kijkt. In principe elke keer zie je vector kun je lezen als een verzameling van Nederlands.

Kleur klasse is echt de software zijde van het houden van de rood-, groen- en blauwheid van de kleuren in het palet.

Kleuren is echt een verzameling van kleuren voor een kijkje. Het heeft een magische functie genaamd sociaaldemocraat die berekent een kleur tussen je laatste kleur en uw huidige kleur na verloop van tijd. De overgangen van de ene kleur naar de andere is dus niet abrupt.

Lengte is gewoon opslaan van het palet van de lengte van de opties.

Lengtes zoals kleuren is een verzameling van lengte en heeft een gedaanteverandering functie die is niet zo ingewikkeld als kleuren.

Een blik heeft zoals je zou verwachten kleuren en lengtes. Dus zelfs al gebruikt de manifestatiecode voor de eindige toestandsmachine slechts één kleur en lengte. Deze code is klaar voor zo veel zoals de Arduino 101 aankan.

#defines zijn slechts een manier van het maken van constanten die geen ruimte op uw Arduino innemen.

Situatie is het algemene idee van een situatie die zich kan voordoen. De belangrijkste functie is hasOccurred de waarde true als de situatie opgetreden zal worden.

Stap, Spin en tijd zijn net speciale versies van de situatie. Sommige gevorderde programmeurs kunnen zich afvragen waarom de situatie, de stap, de Spin, en de tijd worden gedaan op deze manier en het antwoord is simpel leesbaarheid. Graag bespreken verder in een e-mail.

Overgang is een klasse die houdt de huidige look, de volgende look en wat de situatie is opgetreden waardoor de overgang.

updateStepCount en eventCallback kloppen -> stepCount demo, minus sommige seriële Outptut van de CurieIMU.

Eindelijk de gelegenheid klasse. Een verzameling van blikken, een verzameling van situaties en een collectie van overgang regel om uit te gaan van de ene staat naar de andere.

getPeg, setPeg zijn slechts een manier voor het vaststellend een tijdstip waarop iets is ingetreden. We denken aan het als het instellen van een pen in de grond in tijd en dan zien hoe ver uit de buurt van dat peg bent u.

Lus gaat gewoon door de situaties op zoek om te zien als één hebben voorgedaan en vervolgens controleren of de blik overeenkomt met een overgang.

Setup doet alle de setup voor de IMU, de tijd, de draad en de NeoPixel

Verbazingwekkend thats it. 256 coderegels maar echt gewoon uitvoering van ideeën dat elk zinvol is.

Gerelateerde Artikelen

Transfiguratie drukte: Kleur

Transfiguratie drukte: Kleur

Een beetje van invoeringMijn dochter en ik zijn "Transfiguratie drukte" een van de teams op Amerika's grootste Makers. Wij hebben geëlimineerd uit die show maar had gepland om delen van ons werk hier toch. Als u geïnteresseerd bent, kun je onze
Transfiguratie drukte: Lasergesneden omkaderd blad

Transfiguratie drukte: Lasergesneden omkaderd blad

Dit is een aanvulling op onze drukte Transfiguratie: kleur apparaat. Het doel van dit instructable is om te laten zien hoe u kunt nemen onze Infinity Fractal blad van Thingiverse en OpenScad gevolgd door Inkscape maak ik een pdf die is geschikt voor
Transfiguratie drukte: Lengte van

Transfiguratie drukte: Lengte van

Dit instructable doorloopt hoe te bouwen van het mechanisme van de lengte van onze Amerika's grootste Makers.. Het is een beetje van een lange reeks stappen maar uiteindelijk zul je een manier om de lengte van iets wijzigen en beheren van veel van de
Controle van een OWI robotarm met Arduino

Controle van een OWI robotarm met Arduino

de OWI rand robotarm is een goedkope en geweldig 5-mate-van-vrijheid robotic arm dat alleen kost $37. Het is een grote kit met een kind op te bouwen en meer dan een paar uur tot finish zal niet duren. Uit de doos, kan het alleen worden gecontroleerd
Vegen Remote Controlled Camera Mount

Vegen Remote Controlled Camera Mount

Deze camera mount geeft u de mogelijkheid om de besturing van het van een afstand en draai het 180 graden. Mij zal zitten using een GoPro in mijn project, maar u kunt bijna elke camera die u naar de berg beveiligen kunt.Ook in dit instructable zullen
Lijn volgeling Android Robot - PID Control - Setup

Lijn volgeling Android Robot - PID Control - Setup

== > Dit project kreeg de 2e prijs bij 2016 Robotics wedstrijd.Thanks a lot voor alle stemmen ;-)Het doel van dit project is om te bouwen van een Robot volgeling lijn met PID controle. Wij zullen ook een Android toestel gebruiken om gemakkelijk opste
Meerdere Rocket Control Center

Meerdere Rocket Control Center

als een lange tijd Boy Scout leider die ik heb gevonden Instructables als een onschatbare bron. Dus is hier mijn eerste poging om de Gemeenschap te helpen met mijn eerste instrucable.Dit idee werd geboren uit een frustratie van vorig jaar. Ik was een
Voice Control Video Games met behulp van GlovePIE

Voice Control Video Games met behulp van GlovePIE

Bepaalde spellen is profiteren van een element van controle van de stem. Ik zal worden leer je hoe code de populaire gratis spel, Team Fortress 2, inspelen op uw stem. U zal niet zitten kundig voor bewegen en schieten geleid door uw stem alleen, maar
MIDI controle licht Arduino

MIDI controle licht Arduino

Hallo, is deze post gemaakt door Jesus Alberto Cejas en Pablo Javier Ruiz te tonen u ons Project over een muzikale toetsenbord, mooie lichten en Arduino.Dit project was voor 'Creatieve Electronics', een Beng elektronica Engineering 4e jaar module op
M42 Lens diafragma controle op moderne DSLR's

M42 Lens diafragma controle op moderne DSLR's

de M42 "universele schroefdraad" lensvatting werd gebruikt op film camera's van Pentax en Praktica e.a. decennialang... dus een heleboel grote oude lenzen zijn verkrijgbaar tegen bescheiden prijzen. Een heleboel mensen zijn het kopen van adapter
Aquaponics: Online Relay Control

Aquaponics: Online Relay Control

IntroHet meest opwindende ding voor iemand die nieuw is voor toezicht, controle en automatisering via het internet, zijnde kundig voor manueel zwenking iets in- of uitschakelen met behulp van uw computer, tablet of telefoon, vanaf elke locatie.Onverm
How to build een elektrische Longboard met telefoon control how

How to build een elektrische Longboard met telefoon control how

Elektrische longboards zijn awsome!TEST BEELDEN IN DE VIDEO HIERBOVENHOW TO BUILD EEN ELEKTRISCHE LONGBOARD BEDIEND VANAF EEN TELEFOON MET BLUETOOTHUpdate #1: Grip tape geïnstalleerd, enkele aanpassingen aan de snelheidsregelaar hebben betekend ik he
Hoe controle LEDs met een afstandsbediening

Hoe controle LEDs met een afstandsbediening

In een eerdere instructable ik aangetoond hoe krijg ik de HEX-codes voor de knoppen van de afstandsbediening. Hier is de link:Nu dat we de codes, we kunnen gebruiken om te bepalen wat we wensen, in dit instructable ik zal u tonen hoe om te zetten in-
TV Remote Controlled Paper Planes

TV Remote Controlled Paper Planes

Ik hou van alles wat vliegt. In mijn jeugd maakte ik een heleboel papier vliegtuigen, maar ze hebben een enorm probleem. Na enkele minuten komt ze naar beneden vallen. Dus nu ontwierp ik een klein apparaat waarmee u controle van de snelheid en de hoo