Joystick



Wir benutzen, wie im letzten Versuch, das LCD4884 Shield:








Aufgabe: Die Stellung des Joysticks auf dem LCD4884 Shield soll angezeigt werden.


Vorgehensweise:

  1. Library installieren (wenn nicht schon getan):
    Lade Dir diese Datei herunter: LCD4884.zip (neuer: LCD4884n.zip)
    Entpacke sie! Es entsteht ein Ordner "LCD4884".
    Bei Deinen Sketches müsste es bereits einen Ordner namens "libraries" geben. Wenn nicht legst Du ihn an.
    Dein Ordner "LCD4884" schiebst Du in den "libraries" Ordner. Danach musst Du die Arduino IDE neustarten.


  2. Steck Dein LCD4884 auf Deinen Arduino, schließ ihn an USB an und schieb folgendes Programm rein:

/*
  Joystick
  Library LCD4884 notwendig
  www.arduinospielwiese.de
*/
 
#include "LCD4884.h"

int Wertneu=0, Wertalt=100;
char string[10];

 
void setup()
{
  lcd.LCD_init();
  lcd.LCD_clear();
  lcd.LCD_write_string(10, 0, "Joystick:", MENU_NORMAL);
}
 

void loop()
{
   Wertneu = analogRead(A0)/10; //Durch 10, damit es weniger "wackelt"

  /*
    Analogwerte bei mir:
      links: 0
      gedrückt: 141
      unten: 324
      rechts:502
      oben: 740
      unbetätigt: 1023
 
      itoa(Wertneu, string, 10);
      lcd.LCD_write_string(15, 0, string, MENU_NORMAL);
  */
  
   if (Wertneu != Wertalt)
   {
     lcd.LCD_write_string(10, 2, "           ", MENU_NORMAL);
    
     if ( Wertneu < 10)                    lcd.LCD_write_string(10, 2, "links      ", MENU_NORMAL);
     if ((Wertneu > 10) && (Wertneu < 20)) lcd.LCD_write_string(10, 2, "gedrueckt  ", MENU_NORMAL);
     if ((Wertneu > 20) && (Wertneu < 40)) lcd.LCD_write_string(10, 2, "unten      ", MENU_NORMAL);
     if ((Wertneu > 40) && (Wertneu < 60)) lcd.LCD_write_string(10, 2, "rechts     ", MENU_NORMAL);
     if ((Wertneu > 60) && (Wertneu < 80)) lcd.LCD_write_string(10, 2, "oben       ", MENU_NORMAL);
     if ( Wertneu > 80)                    lcd.LCD_write_string(10, 2, "unbetaetigt", MENU_NORMAL);
  
     Wertalt = Wertneu;
     //delay(100);
    
   }
}