Ok das mit dem Panzer hört sich spannend an ;)

Processing kannst du auf processing.org kostenlos dowloaden falls du das noch nicht hast. Die Arduino IDE basiert auf Processing, ist also zum programmieren sehr ähnlich.

Unter> "File" >> "Examples" >> "Library" >> "Serial" finest du die Datei "SimpleWrite":

import processing.serial.*;

Serial myPort; // Create object from Serial class

int val;        // Data received from the serial port

void setup() {

  size(200, 200);

  // I know that the first port in the serial list on my mac

  // is always my  FTDI adaptor, so I open Serial.list()[0].

  // On Windows machines, this generally opens COM1.

  // Open whatever port is the one you're using.

  String portName = Serial.list()[0];

  myPort = new Serial(this, portName, 9600);

}

void draw() {

  background(255);

  if (mouseOverRect() == true) {  // If mouse is over square,

    fill(204);                    // change color and

    myPort.write('H');              // send an H to indicate mouse is over square

  } 

  else {                        // If mouse is not over square,

    fill(0);                      // change color and

    myPort.write('L');              // send an L otherwise
  }
  rect(50, 50, 100, 100);         // Draw a square
}

boolean mouseOverRect() { // Test if mouse is over square

  return ((mouseX >= 50) && (mouseX <= 150) && (mouseY >= 50) && (mouseY <= 150));

}

Dieses Programm ermöglicht die Kommunikation zwischen Arduino und PC. So sieht das Programm mit der Einlesung der Tasten aus: (das ganze draw von oben brauchst du nicht mehr, du fügst stattdessen einfach dieses hier ein)

void draw() { 

 if (keyPressed) {
   if (key == CODED) {
     if (keyCode == UP) {
     myPort.write ("u");
   }
   if (keyCode == DOWN) {
     myPort.write ("d");
 }
 if (keyCode == RIGHT) {
     myPort.write ("r");
 }
  if (keyCode == LEFT) {
     myPort.write ("l");
 }
 }
}
               }

Der Arduinocode findest du im SimpleWrite. Ich würde übrigens den PC nur die rohen "Ja/Nein-Tastendaten" übertragen lassen, das Arduino macht den Rest und rechnet die Befehle für die Motoren um.

Ich hab das Processingprogramm nicht ausprobiert es müsste aber funktionieren.

Hoffe konnte helfen...

Steglo2

...zur Antwort
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.