Paso 2: diseño
Microprocesador
La clave para el diseño de esta consola es el microprocesador de Atmel ATMega328P. Esta ha sido la base de muchos de mis proyectos y es ideal para esto porque se ejecutará durante horas de una batería de iones de litio solo y aunque tenemos que dejar hasta 8 MHz en 3v3, es fácilmente lo suficiente para un par de juegos en una pantalla de baja resolución. También podemos programarlo desde el IDE de Arduino muy popular que hace que escribir sus propios juegos etc. tan sencillo como sea posible.
El ATMega328 también tiene montones de pines de entrada/salida para que podamos manejar la pantalla, la retroiluminación, analógica de medida y entradas digitales de control y todavía tienen pernos de repuesto para la medición de voltaje de la batería, controlar el módulo de sonido etc.. De hecho, tenemos alfileres de sobra incluso después de todo para que esos son explotados en el tablero en caso de que desea agregar alguna función extra que no pienso en! Un contraluz sensibles a la luz sería muy cool.
Otros componentes clave
El resto de los componentes son conducidos por un rendimiento aceptable a bajo costo. Una sola célula de Li-ion y USB cargador Junta nos permiten evitar la necesidad de acceder a la batería, lo que significa que podemos usar una caja de plástico barata. La pantalla LCD de Nokia 5110 es barata pero tiene suficiente resolución para dar una representación real de juegos retros simples y es apoyada por algunas grandes bibliotecas de Arduino. Por último, la toma de WTV020 algunas dominar pero una vez domesticado da muy buen sonido por su costo y su huella. Podría prescindir de la WTV020 y conducir un altavoz directo del ATMega, que ahorraría cerca de £2,50 (más del 15%) sobre el precio pero ese módulo era nuevo para mí y quería dominarlo. También, me gusta la correcta "piew... crash!" cuando dispara a los invasores!
PCB y conexiones
La implementación de esta se centra en un PCB personalizado. Usted podría poner juntos a bordo del perf pero realmente necesitaba jam cosas para hacer que todo vaya en la caja por lo que cabría esperar que necesita un recinto más grande sin PCB. En general, los botones de la pantalla y la entrada y las piezas necesarias para volver a programar están en la parte superior de la PCB con los potenciómetros, ATMega y otros componentes en la parte inferior. Pega Junta cargador hasta la parte inferior de la caja y, el altavoz y la batería Conecte al PCB por medio de cables de puente.
La pantalla LCD es controlada de pernos digitales D8 a D13 (D12 que rompemos a saltar). Utilizamos los pines de reloj y datos de hardware SPI para conducir esto tan rápido como sea posible usando la excelente biblioteca de "PCD8544_SPI" por Arthur Liberman (también conocido como 'el mejor' - http://www.alcpu.com). Ver pasos más adelante para más información sobre eso. PWM salida pin D5 nos da control de brillo de la retroiluminación de la incorporada en el módulo LCD. Si utilizas D12 para otras cosas, probablemente necesita permanecer un pin de entrada. Si lo usas para una salida probablemente se arruinara la interfaz SPI.
Controles de usuario son proporcionados por interruptores en controles digitales pins D6 y D7 y analógico con un potenciómetro en A0 y A1. Ping analógica A3 se utiliza con un divisor de tensión 50/50 para medir el voltaje de la batería contra la voltage.* 3v3 reglamentado que el módulo de sonido de WTV escurr de D2-D4 y A2, dejando A4 & A5 libre adicional analógica o sensores digitales o para agregar periféricos i2c. Del mismo modo, D0 y D1 quedan libre y podrían ser utilizado para entradas pero son útiles para la programación serial o para agregar un dispositivo serial. Salida de serie también es útil para depurar si escribe su propio código.
Materiales de atado
El esquema completo y junta archivos en formato de 6.x de águila se unen a este paso, así como versiones en .pdf e imagen del esquema. La Junta archivo se encuentra con el diseño de reglas para iteadstudio.com pero debe ser fino a más casas de Consejo. La versión v1.1 en este paso tiene un par de cuestiones que se fija sobre la primera versión que había formado por lo que existen unas pequeñas diferencias de algunas de las fotos. Es del mismo tamaño y deberían funcionar igual.
* En mi v1.0 no tengo el circuito del sensor de voltaje a bordo por lo que se acaba de agregar un par de resistencias desde el punto de conector de batería de repuesto para el punto de arranque de A3.