Innehållsförteckning:

Förbättrad 'Simon Says' kod: 3 steg
Förbättrad 'Simon Says' kod: 3 steg

Video: Förbättrad 'Simon Says' kod: 3 steg

Video: Förbättrad 'Simon Says' kod: 3 steg
Video: Flexibility Check! #cheerleader #gymnast #flexibility #flexibilitychallenge #fun 2024, November
Anonim
Förbättrad 'Simon Says' kod
Förbättrad 'Simon Says' kod

Ett uppdaterat "Simple Simon" -projekt.

Specifikt lättare att arbeta med mjukvaruimplementering.

Steg 1: Komma igång

Komma igång
Komma igång

Jag började med instruerbara på 'Simple-Simon-Says-Game'

Se den för allmän hårdvaruimplementering.

Eftersom jag redan hade gjort ett eget projekt som hade 4 knappar, 4 lysdioder och en högtalare, använde jag den hårdvaran (sett ovan). Jag rörde upp bilderna lite för att ändra vissa aspekter för att vara mer lämpliga för illustration i detta projekt.

Den använder en Nano 3.0 och jag använde olika pin -tilldelningar för kringutrustning.

Förresten, du kanske också är intresserad av en hårdvara förenklad version Jag gjorde Instructables.com/id/Fast-Easy-Simon

Steg 2: Anpassning till ny maskinvara

Simon_Says -skissen fungerade inte för mig eftersom koden förlitade sig på fix -pin -tilldelningar. Dessutom var koden svår att följa och hade några buggar.

Så jag skapade den här uppdaterade versionen.

  • Fixade missanvändningen av typen 'boolean' för pin -nummer
  • Ändrade koden så att den fungerar för alla LED- och knappnålstilldelningar.
  • Logikflödet var alltför komplicerat och på platser för repetitivt, vilket gjorde att det var svårt att förstå och felsöka. Så jag förenklade det för det mesta.
  • Tillsammans med andra förbättringar som det faktum att jag ändrade 'Tone' klassobjektets namn från 'speakerpin' till 'speaker' och skapade en bytevariabel 'speakerpin' för dess pin # -tilldelning.
  • Okt 2015: tillåtet för snabba knappsignalsekvenser

En nedladdningslänk för min uppdaterade skiss finns här. Du borde ha lätt för att komma igång med din egen hårdvara genom att helt enkelt ändra pin -tilldelningar nära början av koden. Ladda ner och ha kul med det.

Steg 3: Efter populär efterfrågan

Eftersom det har kommit frågor om hur man använder programvaran med en servo för att styra en spärr när en lyckad uppsättning Simon -mönstermatchning görs. Jag inkluderar här versioner av "Simon_Says" samt liknande "Simon_Sings" som jag anpassade för att vara lämplig för ytterligare modifiering med lämplig servokod. Jag har placerat "@TODO" -kommentarer i koden för varje visar var man ska placera sin servokod.

Den exakta kodningen beror på hårdvaruimplementeringen och servobiblioteket man använder. Jag har inte svar på servospecifika frågor. För det rekommenderar jag att granska följande: video: Så här kontrollerar du servosinstructables.com/id/Arduino-Servo-Motors/instructables.com/id/Access-control-with-Arduino-Keypad-4x4-Servo/For de som behöver ytterligare servorelaterad hjälp rekommenderar jag ett inlägg till servorelaterade instruerbara med de flesta likheterna med deras servoimplementering.

Rekommenderad: