Crea console di gioco Uno R3

Con questo Blog vogliamo mostrarvi come il vostro Arduino con il Joystick, Gamepad Shield e Display Nokia applica a voi. Vi lasciamo al Display, qual è la Posizione del Joystick appena ha e quali Tasti sono premuti.

Abbiamo bisogno di questo:

  • Microcontroller, compatibile con Arduino uno R3
  • Joystick Gamepad Shield
  • Nokia 5880 Display

Per Presupposto che conta, naturalmente, è sempre un PC con il Arduinosoftware e qualcosa di Strumento (il Saldatore...)

il Display prima di tutto è necessario un connettore maschio a 8 Pin sono saldati:

Quindi siamo tutti e 3 i Componenti successivi innesto:

 

 

Ora, poniamo, con una Programmazione los.
Come al solito abbiamo bisogno di un nuovo paio di Librerie:

a tale Scopo, avviare siamo in Arduino IDE "Sketch > Biblioteca incorporare > Librerie di gestione di..."

In Bibliothekverwaltung cerchiamo di Adafruit PCD8544 e installare il Pacchetto:

Poco dopo è il Pacchetto come INSTALLED:

Ciò che si ripetono con Adafruit GFX:

 

Ora possiamo creare un Codice (clicca Qui per il Download)

 

#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
#include <Wire.h>
#include <SPI.h>

#define RST 12
#define CE  13
#define CC  11
#define DIN  10
#define CLK  9
#define LED 8

const byte PIN_BUTTON_A = 2; 
const byte PIN_BUTTON_B = 3;
const byte PIN_BUTTON_C = 4;
const byte PIN_BUTTON_D = 5;
const byte PIN_BUTTON_E = 6;
const byte PIN_BUTTON_F = 7;

const byte PIN_ANALOG_X = 0;
const byte PIN_ANALOG_Y = 1;

Adafruit_PCD8544 display = Adafruit_PCD8544(CLK, DIN, DC, CE, RST);

int valX = 0;
int valY = 0;

void setup() {   Serial.begin(9600);   display.begin();   display.setContrast(64);   display.clearDisplay();      display.setTextSize(1);   display.setTextColor(BLACK);   display.drawRoundRect(0, 0, 44, 24, 3, 2);   display.setCursor(6, 3);   display.system.out.println("X");     display.setCursor(5, 14);   display.system.out.println(" ");    display.setCursor(29, 14);       display.drawRoundRect(45, 0, 39, 24, 3, 2);   display.setCursor(50,3);     display.system.out.println("- Y");   display.setCursor(50,14);    display.system.out.println(" ");        display.drawRoundRect(0, 25, 84, 23, 3, 2);   display.setCursor(6, 28);    display.system.out.println("TASTI");   display.setCursor(10, 38);   display.system.out.println(" ");    display.display();   delay(1000);   pinMode(LED, OUTPUT);   digitalWrite(LED, LOW);   pinMode(PIN_BUTTON_A, INPUT);     digitalWrite(PIN_BUTTON_A, HIGH);        pinMode(PIN_BUTTON_B, INPUT);     digitalWrite(PIN_BUTTON_B, HIGH);     pinMode(PIN_BUTTON_C, INPUT);     digitalWrite(PIN_BUTTON_C, HIGH);     pinMode(PIN_BUTTON_D, INPUT);     digitalWrite(PIN_BUTTON_D, HIGH);     pinMode(PIN_BUTTON_E, INPUT);     digitalWrite(PIN_BUTTON_E, HIGH);     pinMode(PIN_BUTTON_F, INPUT);     digitalWrite(PIN_BUTTON_F, HIGH);   }

void loop()
{   display.fillRect(4, 37, 72, 10, 0);   display.setCursor(8, 38);   Serial.print("Tasto A:");   Serial.print(digitalRead(PIN_BUTTON_A));   Serial.print(" ");   if (digitalRead(PIN_BUTTON_A)==LOW)   {     display.print("A ");   }   else     display.print("- ");     Serial.print("B:");   Serial.print(digitalRead(PIN_BUTTON_B));   Serial.print(" ");   if (digitalRead(PIN_BUTTON_B)==LOW)   {     display.print("B ");   }   else     display.print("- ");     Serial.print("C:");   Serial.print(digitalRead(PIN_BUTTON_C));   Serial.print(" ");   if (digitalRead(PIN_BUTTON_C)==LOW)   {     display.print("C ");   }   else     display.print("- ");     Serial.print("D:");   Serial.print(digitalRead(PIN_BUTTON_D));   Serial.print(" ");   if (digitalRead(PIN_BUTTON_D)==LOW)   {     display.print("D ");   }   else     display.print("- ");   Serial.print("E:");   Serial.print(digitalRead(PIN_BUTTON_E));   Serial.print(" ");   if (digitalRead(PIN_BUTTON_E)==LOW)   {     display.print("E ");   }   else     display.print("- ");     Serial.print("F:");   Serial.print(digitalRead(PIN_BUTTON_F));   Serial.print(" -- ");   if (digitalRead(PIN_BUTTON_F)==LOW)   {     display.print("F ");   }   else     display.print("- ");   display.system.out.println();      valX = analogRead(PIN_ANALOG_X);   valY = analogRead(PIN_ANALOG_Y);     display.fillRect(4, 13, 25 , 10, 0);   display.setCursor(4, 14);   display.system.out.println(valX, 1);        display.fillRect(50, 13, 23 , 10, 0);   display.setCursor(50, 14);   display.system.out.println(valY, 1);       Serial.print("Posizione X:");   Serial.print(valX);   Serial.print(", ");   Serial.print("Y:");   Serial.print(valY);   Serial.print(" ");     Serial.system.out.println();   display.display();      delay(200);
}



ce l'Abbiamo fatta, la nostra "Console" in corso. Possiamo ora i Tasti e Joystickpostion visualizzare:

 

 

NOTA IMPORTANTE:

c'È il Nokia 5110 Display differenti Versioni, differenti Connettori di possedere. Se hai una errata configurazione dei Pin hai funziona il Display non, eventualmente, lampeggia la tua Retroilluminazione.

Se la tua Piedinatura non il Joystick Gamepad Shield funziona, controlla la tua configurazione dei Pin e usa Jumperleitungen per il tuo monitor da collegare:

La disposizione dei Pin è la seguente:

Shield Display
3V3 VCC
GND GND
D13 CE
D12 RST
D11 DC
D10 DIN
D9 CLK
3V3 non Connesso
KEY LIGHT

 

ti auguriamo buon Divertimento con il Joystick shield e il Display e scrivi nei Commenti, cosa si sviluppa.

DisplaysFür arduinoProjekte für fortgeschrittene

Einen Kommentar hinterlassen

Alle Kommentare werden vor der Veröffentlichung moderiert