Con este blog, queremos mostrarle cómo usar su escudo de manija y el monitor de Nokia.Mostramos la posición y el botón de la palanca en la pantalla.
Necesitamos:
- Microcontroladores compatibles con Ardino un R3
- Escudo de manija.
- Nokia 5880
Por supuesto, los requisitos básicos siempre incluyen un pc con el programa informático Ardino y algunas herramientas.
Lo primero que hay que hacer en el monitor es soldar un pie de tubo con ocho pies de tubo:
Entonces podemos poner las tres partes juntas:
Ahora comenzaremos la programación.
Como siempre, necesitamos una nueva biblioteca:
Para ello comenzamos con arduino IDE "Sketch & gt; include Library & gt; Manage Libraries...".
En la gestión de bibliotecas, buscamos adafruit pcdd8544 e instalamos paquetes de programas:
Poco después se instaló el programa:
Repetimos esto con adafruit gfx:
Ahora podemos crear el Código. Descargar)
35; incluye <Fruta gfx.Hora> 35; incluye <Adaflit pcd8544.Hora> 35; incluye <Cableado.Hora> 35; incluye <Proteína de separación.Hora> - definición. Rst. 12 - definición. Canadá 13 - definición. D, C. 11 - definición. Normas industriales de Alemania 10 - definición. CLK Corporation 9 - definición. Diodos luminosos 8 Constante Intercambio Botón fijo = 2; Constante Intercambio Botón B = 3; Constante Intercambio Botón C = 4; Constante Intercambio Botón D = 5; Constante Intercambio Botón e = 6; Constante Intercambio Botón fijo F = 7; Constante Intercambio Simulación X = 0; Constante Intercambio Modelo y = 1; Adaflit pcd8544 Mostrar = Adaflit pcd8544(CLK Corporation, Normas industriales de Alemania, D, C., Canadá, Rst.); Interior Valor = 0; Interior Sí. = 0; Vacío. Configuración() { Transporte.Iniciar(9600); Mostrar.Iniciar(); Mostrar.Grado de contraste(64); Mostrar.Limpiar(); Mostrar.Tamaño de setas(1); Mostrar.Settextcolor Company(Negro); Mostrar.Draw roundrect(0, 0, 44, 24, 3, 2); Mostrar.Establecer cursor(6, 3); Mostrar.Imprimir(- "X -"); Mostrar.Establecer cursor(5, 14); Mostrar.Imprimir(" "); Mostrar.Establecer cursor(29, 14); Mostrar.Draw roundrect(45, 0, 39, 24, 3, 2); Mostrar.Establecer cursor(50,3); Mostrar.Imprimir(- y - - "); Mostrar.Establecer cursor(50,14); Mostrar.Imprimir(" "); Mostrar.Draw roundrect(0, 25, 84, 23, 3, 2); Mostrar.Establecer cursor(6, 28); Mostrar.Imprimir(- "sabores" - sabores - - "); Mostrar.Establecer cursor(10, 38); Mostrar.Imprimir(" "); Mostrar.Mostrar(); Retraso(1000); Modo pinmode(Diodos luminosos, Salida); Escritura digital(Diodos luminosos, Bajo); Modo pinmode(Botón fijo, Entrada); Escritura digital(Botón fijo, Alto); Modo pinmode(Botón B, Entrada); Escritura digital(Botón B, Alto); Modo pinmode(Botón C, Entrada); Escritura digital(Botón C, Alto); Modo pinmode(Botón D, Entrada); Escritura digital(Botón D, Alto); Modo pinmode(Botón e, Entrada); Escritura digital(Botón e, Alto); Modo pinmode(Botón fijo F, Entrada); Escritura digital(Botón fijo F, Alto); } Vacío. Correr() { Mostrar.Filerect Inc.(4, 37, 72, 10, 0); Mostrar.Establecer cursor(8, 38); Transporte.Imprimir("Clave a:"); Transporte.Imprimir(Lectura digital(Botón fijo)); Transporte.Imprimir(" "); Si (Lectura digital(Botón fijo)==Bajo) { Mostrar.Imprimir("I"); } Hora prevista de despegue Mostrar.Imprimir("- "); Transporte.Imprimir(B:); Transporte.Imprimir(Lectura digital(Botón B)); Transporte.Imprimir(" "); Si (Lectura digital(Botón B)==Bajo) { Mostrar.Imprimir("B"); } Hora prevista de despegue Mostrar.Imprimir("- "); Transporte.Imprimir(C:); Transporte.Imprimir(Lectura digital(Botón C)); Transporte.Imprimir(" "); Si (Lectura digital(Botón C)==Bajo) { Mostrar.Imprimir("C"); } Hora prevista de despegue Mostrar.Imprimir("- "); Transporte.Imprimir(D:); Transporte.Imprimir(Lectura digital(Botón D)); Transporte.Imprimir(" "); Si (Lectura digital(Botón D)==Bajo) { Mostrar.Imprimir("D"); } Hora prevista de despegue Mostrar.Imprimir("- "); Transporte.Imprimir(E:); Transporte.Imprimir(Lectura digital(Botón e)); Transporte.Imprimir(" "); Si (Lectura digital(Botón e)==Bajo) { Mostrar.Imprimir(Y); } Hora prevista de despegue Mostrar.Imprimir("- "); Transporte.Imprimir(F:); Transporte.Imprimir(Lectura digital(Botón fijo F)); Transporte.imprimir(" -- "); si (digitalRead(PIN_BUTTON_F)==BAJA) { exhibir.imprimir("F"); } otra cosa exhibir.imprimir("- "); exhibir.println(); valX = analogRead(PIN_ANALOG_X); valY = analogRead(PIN_ANALOG_Y); exhibir.fillRect(4, 13, 25 , 10, 0); exhibir.setCursor(4, 14); exhibir.println(valX, 1); exhibir.fillRect(50, 13, 23 , 10, 0); exhibir.setCursor(50, 14); exhibir.println(valY, 1); De serie.imprimir("Posición X:"); De serie.imprimir(valX); De serie.imprimir(", "); De serie.imprimir("Y:"); De serie.imprimir(valY); De serie.imprimir(" "); De serie.println(); exhibir.exhibir(); retrasar(200); }
Lo logramos, nuestra "consola de juegos" se está ejecutando. Ahora podemos mostrar los botones y la posición del joystick:
AVISO IMPORTANTE:
Existen diferentes versiones de la pantalla del Nokia 5110 que tienen diferentes asignaciones de pines. Si tiene una asignación de pin incorrecta, la pantalla no funcionará, su luz de fondo puede parpadear.
Si su pinout no funciona en el escudo del joystick gamepad, verifique su pinout y use líneas de puente para conectar su pantalla:
El pinout es el siguiente:
Escudo | Display |
3V3 | VCC |
GND | GND |
D13 | CE |
D12 | RST |
D11 | DC |
D10 | DIN |
D9 | CLK |
3V3 | no conectado |
Clave | LUZ |
Le deseamos mucha diversión con el protector del joystick y la pantalla y escriba en los comentarios lo que ha desarrollado con él.