Paso 5: Código cambia
Mencioné en el paso anterior que parte del código ha cambiado desde la anterior Instructable Simon de dice. (El nuevo código está disponible en un archivo de texto, MPIDE y Arduino archivo) La mayoría de estos cambios no cambia la experiencia de usuario, por ejemplo asignando cada interruptor el LED visual apropiado, o conseguir el PmodDA4 para iluminar los LEDs en lugar de un registro de cambio.
Hay dos cambios que afectan la experiencia de usuario aunque: incorporar el sonido de la PmodAMP2 y la adición de modo fácil y difícil. El PmodAMP2 es capaz de aceptar un PWM o una señal analógica para producir sonido que puede ser "aprovechado" a través de sus auriculares de tamaño estándar.
Para este proyecto, envié ondas cuadradas que representan diversas notas de la música (la escala mayor de C) para cada uno de los ocho LEDs cada vez que uno se encendió, por Simon o el usuario. Además, si el usuario había conjeturado correctamente un patrón, un Victoria (que recuerda a uno encontrar un contenedor de corazón) se reproduce sonido mientras parpadean los LEDs verdes. Si la respuesta era incorrecta, un triste wah-wah, wah, wah, wahwahwahwah sonido se juega en su lugar.
Como he mencionado anteriormente, la otra pieza adicional de código es los modos difíciles y fáciles. El microcontrolador WF32 elige el modo de juego adecuado cuando arranca primero para arriba basado en el nivel lógico detectado en uno de sus pines de I/O. Si pin 39 se encuentra en un nivel lógico bajo, se elige el modo difícil donde el patrón es diferente para cada conjetura solo si el usuario conjeturado correctamente o no.
Por otro lado, si se detectó un nivel lógico alto en el pin 39 durante el arranque, comienza el juego en modo fácil. Esta vez, el patrón se mantendrá para cada conjetura correcta, por lo que podría terminar encima de conseguir un patrón de LED en forma de 2;
2, 5;
2, 5, 1;
2, 5, 1, 8;
y así sucesivamente. Si usted alguna vez supongo que el patrón de mal aunque (para el modo fácil y difícil) la longitud del patrón restablece a un tamaño de sólo un LED de flash.