Stap 5: Codewijzigingen
Ik vermeld op de vorige stap dat deel van de code van de vorige Simon zegt Instructable is veranderd. (De nieuwe code is beschikbaar in een tekstbestand, MPIDE en Arduino bestand) De meeste van deze wijzigingen de gebruikerservaringen, bijvoorbeeld elke switch toewijzen aan de visueel passende LED, of het krijgen van de PmodDA4 aan het licht van de LED's in plaats van een shift register niet gewijzigd.
Er zijn twee wijzigingen, maar die hebben wel invloed op de gebruikerservaring: integratie van het geluid voor de PmodAMP2 en de toevoeging van harde en gemakkelijk modus. De PmodAMP2 is een PWM of een analoog signaal naar het produceren van geluid dat kan worden "aangeboord" via de standaard formaat hoofdtelefoonaansluiting kan accepteren.
Voor dit project stuurde ik vierkante golven die verschillende muziek notities (de C grote schaal) voor elk van de acht LEDs vertegenwoordigen wanneer een was verlicht, door Simon of de gebruiker. Bovendien, als de gebruiker met succes een patroon geraden, wordt een overwinning van (die doet denken aan een vinden een hart container) geluid afgespeeld terwijl de groene LED's knipperen. Als de gok onjuist, was een triest wah, wah, wah, wahwahwahwah geluid wordt afgespeeld in plaats daarvan.
Zoals ik al eerder zei, is het andere extra stukje code de harde en gemakkelijk modi. De WF32 microcontroller kiest de juiste spel modus wanneer het voor het eerst opstart gebaseerd op het niveau van de logica gedetecteerd op een van de I/O pinnen. Als de pin 39 blijkt te zijn op een laag niveau van logica, harde wijze gekozen waar het patroon is verschillend voor elke één gok of de gebruiker of niet correct geraden.
Aan de andere kant, als een hoge logica niveau op pin 39 tijdens het opstarten ontdekt was, begint het spel in easy-modus. Ditmaal zal het patroon worden gehandhaafd voor elke juiste gok, dus je zou kunnen eindigen krijgen een patroon van de LED in de vorm van 2;
2, 5;
2, 5, 1;
2, 5, 1, 8;
en zo verder. Als je het patroon ooit verkeerd raden al (voor zowel gemakkelijk als moeilijk modus) de Patroonlengte opnieuw in op een grootte van slechts één LED-flitser.