Tabla de contenido:

Serpiente en una placa de pruebas: 3 pasos (con imágenes)
Serpiente en una placa de pruebas: 3 pasos (con imágenes)

Video: Serpiente en una placa de pruebas: 3 pasos (con imágenes)

Video: Serpiente en una placa de pruebas: 3 pasos (con imágenes)
Video: NACIMIENTO DE LAS SERPIENTES, 3 FORMAS DISTINTAS 2024, Noviembre
Anonim
Serpiente en una placa de pruebas
Serpiente en una placa de pruebas
Serpiente en una placa de pruebas
Serpiente en una placa de pruebas
Serpiente en una placa de pruebas
Serpiente en una placa de pruebas

"¿Tienes juegos en tu teléfono?"

"No exactamente."

Intro:

Sencillo de controlar, fácil de programar e inmortalizado por el Nokia 6110, Snake se ha convertido en el proyecto favorito de los ingenieros. Se ha implementado en cualquier cosa, desde matrices LED, LCD, iluminación de estanterías e incluso ventanas de edificios enteros. Implementaremos Snake en una pequeña placa de pruebas y una pantalla OLED. La gente ciertamente ha hecho reproductores de serpientes más pequeños, pero esto usa específicamente una placa de pruebas, eliminando la necesidad de diseñar PCB o soldar.

(Podrías crear una aplicación en tu teléfono, pero no hacemos las cosas porque son fáciles).

Requisitos previos:

Una comprensión básica de los circuitos, cómo hacer una placa de pruebas y una sólida comprensión de la programación en Arduino.

Suministros

  • Arduino Nano
  • 2 resistencias razonablemente altas (1kOhm)
  • Pequeña placa de pruebas
  • 2 pulsadores
  • Alambre de núcleo sólido de 22 AWG
  • OLED de 128 x 64

Estos son enlaces de afiliados de Amazon, por lo que gano una pequeña comisión con cada venta. Si aún no tiene estos suministros y desea apoyar mis proyectos futuros, ¡siga estos enlaces!:)

Paso 1: tablero de pruebas

Tablero de circuitos
Tablero de circuitos
Tablero de circuitos
Tablero de circuitos
Tablero de circuitos
Tablero de circuitos

Para hacer nuestro producto final, obviamente tenemos que ensamblar el hardware para programar y probar nuestro proyecto. El diagrama del sistema de este proyecto es bastante simple, ya que solo involucra un total de 4 componentes.

1. Extiéndalo:

Tome sus componentes y colóquelos en el tablero, asegurándose de que todo encaje. Visualice qué cables y clavijas utilizará y con qué fines. Asegúrese de que sus cables anticipados no se crucen, porque eso hace que la placa de pruebas sea más desordenada. ¡Escriba qué puntos necesitará conectar! Aunque se trata de una placa de pruebas sencilla, le facilitará la vida durante el proceso de cableado y en general. Debido a lo pequeño que es nuestro espacio de trabajo, este es un paso increíblemente importante.

Notas:

Debido a que el OLED usa el bus I2C, se deben usar los pines A4 y A5. El tamaño de la placa de pruebas no permite un riel eléctrico y de tierra, por lo que utilicé algunos trucos para que todo saliera bien. El voltaje positivo para los botones se suministra mediante los pines D13 y A2. Descubrí que los pines de Arduino no solo pueden suministrar corriente, sino que también absorben corriente, por lo que utilicé A3 como tierra para el botón derecho. Para maximizar el espacio en la placa de pruebas, colgué la mitad del Nano fuera de la placa y apoyé los pines del lado izquierdo con un trozo de espuma.

2. Conéctelo:

Con un par de pelacables y una cantidad decente de cable de núcleo sólido de 22 AWG, conecte cuidadosamente sus componentes. El uso de un núcleo sólido para hacer proyectos de placa de pruebas semipermanentes es clave, porque puede recortarlos a la medida, a diferencia de los cables de puente. Asegúrese de no dejar un exceso de longitud en los cables, ya que hará que la tabla se ensucie. Recorte los cables de las resistencias desplegables para que encajen a ras de la placa.

(También puede seguir lo que hice anteriormente).

Paso 2: Programar y probar

Programa y prueba
Programa y prueba

Para ahorrarse un dolor de cabeza más adelante, asegúrese de que el OLED y los botones funcionen de la manera en que se supone que deben hacerlo mediante la creación de programas de prueba básicos.

1. Planificar, planificar, planificar:

Simplemente saltar directamente al código no es una práctica inteligente. Créame, ¡lo he intentado! Es por eso que debe describir cómo funcionará su programa. Un diagrama de flujo del programa es una forma bastante sólida de planificar lo que su código necesita hacer y definitivamente lo mantendrá encaminado. Toma el mío por ejemplo (arriba)

2. Código, código, código:

Francamente, este proyecto es un ejercicio de programación más grande que un ejercicio de hardware. La única biblioteca que utilicé fue la biblioteca OLED de Adafruit, sin contar las bibliotecas compatibles GFX y Wire.

Haga que instale la biblioteca OLED de Adafruit a través del administrador de biblioteca de Arduino IDE.

No puedo documentar cada línea de código que escribí, pero aquí hay algunos consejos:

Consejos:

Comentarios:

- En primer lugar, escriba comentarios prolijos y útiles mientras codifica. Futuro, usted y otros que lean su código definitivamente se lo agradecerán.

Memoria:

- Con proyectos más complejos como estos, SRAM se convierte en un producto de moda. En la biblioteca Adafruit, el búfer OLED de 128 x 64 ocupa 1 kB solo, que es aproximadamente la mitad de la memoria en un ATMega328p. Por tanto, la gestión inteligente de la memoria es más importante que nunca.

- Con grandes estructuras de datos, los datos almacenados se acumularán y ocuparán mucho espacio. Para reducir la huella de memoria de mis variables, utilicé tipos de datos más pequeños (como cortos y bytes) cuando pude.

- Las cadenas generalmente se almacenan en SRAM, pero el uso de la función F () las pondrá en PROGMEM, ahorrando memoria valiosa.

Millis:

- Para lograr una sincronización más precisa de los ciclos del juego, utilice la función millis (). Hay muchos buenos tutoriales y ejemplos en línea.

Predefinir:

- Utilice la directiva de preprocesador #define como una forma fácil de establecer valores permanentes en el código.

Prueba:

- Pruebe su código sobre la marcha. Será mucho más fácil eliminar los errores.

Paso 3: ¡Disfruta

¡Diviértete con tu nuevo juego de serpientes!

(Sé que gané con 20 puntos en el video de arriba, puede establecer la condición de victoria más arriba en mi código).

Cosas para expandir:

  • Una batería para la portabilidad
  • Botones más seguros
  • Un juego de serpientes aún más pequeño
  • ¿Aún más juegos?

Recomendado: