Innholdsfortegnelse:

Octarine: et fargematchende spill med WS2812 RGB -lysdioder: 6 trinn
Octarine: et fargematchende spill med WS2812 RGB -lysdioder: 6 trinn

Video: Octarine: et fargematchende spill med WS2812 RGB -lysdioder: 6 trinn

Video: Octarine: et fargematchende spill med WS2812 RGB -lysdioder: 6 trinn
Video: Travail autour des aquarelles octarine 2024, November
Anonim
Octarine: et fargematchende spill med WS2812 RGB -lysdioder
Octarine: et fargematchende spill med WS2812 RGB -lysdioder

Octarine, fargen på magi. Det var levende og glødende, og det var fantasiens ubestridte pigment, for uansett hvor det dukket opp, var det et tegn på at bare materie var en tjener for det magiske sinnets krefter. Det var selve fortryllelsen.

Men svindel hadde alltid trodd at det så ut som en slags grønn-lilla.

- Terry Pratchett - The Color Of Magic

Alle fargene er fortryllet, og du må frigjøre dem en etter en. Tre magiske staver vil hjelpe deg i din søken.

P. S. I dette prosjektet bruker jeg mye binære operatører og binære masker, så det kan brukes av informatikklærere for å lære boolsk logikk på en morsom måte.

Rekvisita

1x Arduino Nano/Uno eller annet kompatibelt brett. Prosjektet bruker faktisk 5 digitale pins og mindre enn 6 KB minne. Så Attiny85-basert bord bør også fungere godt.

4x taktile knapper. Hvis du foretrekker det, kan du bruke sensorknapper i stedet.

1x WS2812 LED -stripe eller bar med 8 kontrollerbare RGB -lysdioder.

1x brødbrett eller PCB -prototypebrett hvis du foretrekker det.

Styrekabler for brødbrett.

Trinn 1: Spillregler

Spillregler
Spillregler

Spillgrensesnittet har 8 RGB -lysdioder. Målet er å få dem alle til å skinne med samme farge. Den er rød i første “verden”, oransje i andre, gul i tredje, etc.

Det er 3 hovedknapper. Hver av dem endrer fargene på fire lysdioder i henhold til binær maske. For eksempel har den første knappen maske 11110000. Det betyr at den endrer farger på de fire første lysdiodene. Det er også en "Shift" -knapp som inverterer en maske. Hvis spilleren trykker på Shift+First -knappen, vil masken være 00001111 og fire siste lysdioder påvirkes. Farger endres syklisk.

Det vedlagte bildet beskriver alle masker.

Trinn 2: Nivådesign

Nivåer Design
Nivåer Design

Spillet består av "verdener" åtte undernivåer hver. Første verden er "rød", og alle lysdiodene her kan være i bare to tilstander: blank og rød. I hvert undernivå brukes flere tilfeldig trinn, så vanskeligheten øker gradvis. Når du passerer en verden (dvs. alle undernivåene), redder du den neste fargen. Så i den andre ("oransje") verden har alle lysdiodene tre tilstander: blank, rød og oransje. Det vil si at hver neste verden er mer utfordrende enn tidligere.

Hva skjer i den 8. ("Octarine") verden … vel … ren magi.

Trinn 3: Kretsen

Kretsen
Kretsen

Det avhenger av det bestemte kortet du bruker, men jeg anbefaler på det sterkeste å bruke ekstern strømforsyning for lysdioder.

Jeg brukte pinner 2, 3, 4 og 5 for knapper. Hvis du bruker en annen mikrokontroller eller pinner, ikke glem å endre den i programkoden.

Trinn 4: Koden

Koden
Koden

Her kan du finne den siste versjonen av kildekoden.

Trinn 5: Testing

Testing
Testing

Trinn 6: Så, hva er neste?

Så, hva er neste?
Så, hva er neste?

Du har kanskje lagt merke til at spillet faktisk ikke har 8. (Octarine) verden. Det ble laget med vilje. Magi … er ikke noe som skal reproduseres nøyaktig.

Jeg oppfordrer deg til å bygge din egen 8. verden. For eksempel kan du få spilleren til å arrangere regnbuefarget array i stedet for monokrom eller implementere celler med skiftende farger. Det er opp til deg. Gjør din egen magi på din egen måte.

Anbefalt: