INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Sainsmart Joystick
01.11.2014, 18:21 (Dieser Beitrag wurde zuletzt bearbeitet: 02.11.2014 17:51 von OPunktSchmidt.)
Beitrag #1
Sainsmart Joystick
Hallo zusammen,

ich bin noch ein Arduino - Neuling. Programmierung ich für mich zwar kein Thema das ich das beruflich mache aber Elektronik ist für mich Neuland.

Jetzt habe ich mir von Sainsmart diesen Joystick gekauft: http://www.amazon.de/SainSmart-JoyStick-...t+joystick

Also angeschlossen wie auf dem Joystick gekennzeichnet. GND an GND, 5Volt an 5 Volt, X und Y an jeweils einen analogen Input und den Pushbutton an einen digitalen Pin. Dann habe ich mir mal die Werte die der Joystick liefert über den Serial Monitor ausgeben lassen und war doch leicht verwirrt.

Selbst wenn ich den Joystick nicht bewege springen die Werte in der X und Y Achse wild umher und wenn ich den Pushbutton drücke passiert gar nichts. Noch seltsamer: Wenn ich ihn nach rechts Bewege hat der digitale Pin (also der Pushbutton) plötzlich ein Input Signal.

Könnt ihr mich aufklären?



PHP-Code:
int ledPinRed 2;
int joyStickButtonPin 4;
int joyStickXPin 4;
int joyStickYPin 5;

void setup()
{
  
Serial.begin(9600);
  
pinMode(ledPinRed,OUTPUT);
  
pinMode(joyStickButtonPin,INPUT);
}

void loop()
{

    
Serial.println("X:");
    
Serial.println(analogRead(joyStickXPin));
    
Serial.println("Y:");
    
Serial.println(analogRead(joyStickYPin));


  if(
digitalRead(joyStickButtonPin) == HIGH)
  {
      
Serial.print("button");
     
digitalWrite(ledPinRedHIGH);
  }

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.11.2014, 21:00
Beitrag #2
RE: Sainsmart Joystick
(01.11.2014 18:21)OPunktSchmidt schrieb:  ....
Könnt ihr mich aufklären?

...Voraussetzung ist das wir deinen Code dazu lesen können...Cool

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.11.2014, 17:50
Beitrag #3
RE: Sainsmart Joystick
(01.11.2014 21:00)Bitklopfer schrieb:  
(01.11.2014 18:21)OPunktSchmidt schrieb:  ....
Könnt ihr mich aufklären?

...Voraussetzung ist das wir deinen Code dazu lesen können...Cool

Habe den Code im ersten Post ergänzt. Groß mache ich da aber nichts. Gebe hier nur die Werte aus wie sie von dem Joystick kommen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.11.2014, 20:49
Beitrag #4
RE: Sainsmart Joystick
Hatte das gleiche Problem mit Tastern, nach Verwendung von Widerständen von Plus auf ground ist's weg. Zeigt saubere und eindeutige Ergebnisse.
Vielleicht hilft es auch bei Dir.
Vielleicht kann ein "elektronisch vorbelasteter" Mitleser uns Möchtegern-Arduino-Quälern mal den Grund für dieses Verhalten nennen.

Eberhard
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.11.2014, 21:24
Beitrag #5
RE: Sainsmart Joystick
(01.11.2014 18:21)OPunktSchmidt schrieb:  ....

PHP-Code:
int ledPinRed 2;
int joyStickButtonPin 4;
int joyStickXPin 4;
int joyStickYPin 5;

void setup()
{
  
Serial.begin(9600);
  
pinMode(ledPinRed,OUTPUT);
  
pinMode(joyStickButtonPin,INPUT);
}

void loop()
{

    
Serial.println("X:");
    
Serial.println(analogRead(joyStickXPin));
    
Serial.println("Y:");
    
Serial.println(analogRead(joyStickYPin));


  if(
digitalRead(joyStickButtonPin) == HIGH)
  {
      
Serial.print("button");
     
digitalWrite(ledPinRedHIGH);
  }


....öhm Button und joyStickXPin auf dem gleichen Port ???
und btw. analogRead auf nen Digiport funzt auch nicht...

versuch mal das Zeugs so anzuschließen:

int ledPinRed = 2;
int joyStickButtonPin = 4;
int joyStickXPin = A0; // gibt nur Analogeingänge A0 bis A5
int joyStickYPin = A1; // A4 + A5 halte ich immer für I2C Devices frei

lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
04.11.2014, 21:48 (Dieser Beitrag wurde zuletzt bearbeitet: 04.11.2014 21:49 von OPunktSchmidt.)
Beitrag #6
RE: Sainsmart Joystick
(02.11.2014 21:24)Bitklopfer schrieb:  
(01.11.2014 18:21)OPunktSchmidt schrieb:  ....

PHP-Code:
int ledPinRed 2;
int joyStickButtonPin 4;
int joyStickXPin 4;
int joyStickYPin 5;

void setup()
{
  
Serial.begin(9600);
  
pinMode(ledPinRed,OUTPUT);
  
pinMode(joyStickButtonPin,INPUT);
}

void loop()
{

    
Serial.println("X:");
    
Serial.println(analogRead(joyStickXPin));
    
Serial.println("Y:");
    
Serial.println(analogRead(joyStickYPin));


  if(
digitalRead(joyStickButtonPin) == HIGH)
  {
      
Serial.print("button");
     
digitalWrite(ledPinRedHIGH);
  }


....öhm Button und joyStickXPin auf dem gleichen Port ???
und btw. analogRead auf nen Digiport funzt auch nicht...

versuch mal das Zeugs so anzuschließen:

int ledPinRed = 2;
int joyStickButtonPin = 4;
int joyStickXPin = A0; // gibt nur Analogeingänge A0 bis A5
int joyStickYPin = A1; // A4 + A5 halte ich immer für I2C Devices frei

lg
bk

Ohje ich glaube da liegt der Fehler. Ich hatte irgendwie im Hinterkopf das die analogen Eingänge auch über die Ziffern 1-x angesprochen werden und das die Entscheidung über die Funktion Zustande kommt. Das wird es sein... ich werde es am Wochenende mal ausprobieren.

Danke.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  SainSmart 3.2 TFT + 5" TFT/SD Shield + Due SAM3X8E ARM (Arduino Due) Techniker_UE 13 3.222 24.07.2016 14:34
Letzter Beitrag: Eichner
  SainSmart 5" TFT LCD Display + 5" TFT/SD Shield Kit Für Arduino Mega2560 R3 Falk84 14 1.238 19.02.2016 08:48
Letzter Beitrag: arduinopeter
  SainSmart 3.2" TFT LCD Display... arduinofan 10 1.099 18.01.2016 15:59
Letzter Beitrag: DL1AKP
  Steuerung eines Remotekopfes mit Joystick, 2Stck DC Motore und Arduino max123 6 608 30.12.2015 14:56
Letzter Beitrag: max123
  Wie steuere ich 2 DC Motoren über ein Motorshield mit einem Joystick? Vittelboy 12 5.580 29.12.2015 09:51
Letzter Beitrag: max123
  LED mit Joystick steuern / Dimmen und versch. Modis? Hansaplast 12 853 26.10.2015 19:30
Letzter Beitrag: P.Martin
  SainSmart 1602 LCD Keypad Shield Modul Display Tasten Rossy 20 3.057 08.08.2015 12:44
Letzter Beitrag: hotsystems
  Brauche Hilfe bei Sainsmart TC3200 Farbsensor Leberwurst 8 1.486 03.06.2015 20:29
Letzter Beitrag: Leberwurst
  suche hilfe für SainSmart 4,3 uwe.z 0 1.712 13.04.2015 17:30
Letzter Beitrag: uwe.z
  SainSmart LCD Keypad Shield Pin Belegung SR71 6 3.262 13.12.2014 19:07
Letzter Beitrag: bergfrei

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste