Arduino LED mit Processing 3 per Mausklick schalten aus Windows

Die freie Processing Software kann Windows Fenster erstellen, Grafiken ausgeben, auf die Maus reagieren und mit der Seriellen Schnittstellen arbeiten.

Hier ein einfaches Beispiel in dem die Arduino LED13 parallel zum Mausklick eingeschaltet wird.

Zuerst wird das Arduino Programm übersetzt und hoch geladen auf den Uno.

// Arduino LED bei Mausklick anschalten
// aus einem Processing 3+ Fenster
//
// Matthias Busse 18.3.2017 Version 1.0
 
 
 char wert; // Daten von der seriellen Schnittstelle
 int led = 13; // Board LED vom Arduino Uno
 
 void setup() {
   pinMode(led, OUTPUT); 
   Serial.begin(38400); 
 }
 
 void loop() {
   while (Serial.available()) { // Wenn serielle Daten kommen, dann lesen
     wert = Serial.read(); // Daten in val speichern
   }
   if (wert == '1') { // bei einer 1
    digitalWrite(led, HIGH); // LED ein
   } 
   else {         // sonst
     digitalWrite(led, LOW); // LED aus
   }
 }

Dann das Processing Programm übersetzt

// Arduino LED bei Mausklick anschalten
// aus einem Processing 3+ Fenster
//
// Matthias Busse 18.3.2017 Version 1.0

import processing.serial.*;

Serial myPort;  // Serial Objekt anlegen

void setup() {
  size(400,200); //Fenstergröße festlegen
  String portName = Serial.list()[0]; // Seriellen Port festlegen 0, 1, 2 ...
  myPort = new Serial(this, portName, 38400);
  surface.setTitle("klick mich"); // Fenster Titel
}

void draw() {
  if (mousePressed == true) { //Maus im Fenster gedrückt
    myPort.write('1'); //sende 1
    println("1");
    } 
  else {
    myPort.write('0'); //sende 0
    println("0");
  }   
}

und gestartet mit dem Pfeil oben.

Beim Klick ins Fenster wird die LED parallel eingeschaltet.

Ich habe hier nur eine Serielle Schnittstelle (COM16), deshalb wurde Serial.list()[0]; verwendet. Ansonsten kann hier an Stelle der 0 auch 1, 2 … stehen.

Verwendet wurden:
Arduino Software 1.8.0
Processing 3.3
Arduino Uno Board.

von Matthias Busse

Ein Gedanke zu „Arduino LED mit Processing 3 per Mausklick schalten aus Windows

  1. Andreas vo Lieschtel

    Das ist das erste Mal, dass ich eine Verbindung Processing zu Arduino teste. Danke für das übersichtliche Projekt.
    Es funktioniert tadellos.
    Hinweis: die Porteinstellung im Processing funktionierte erst, nachdem ich für meinen Port COM8 im Processing bei „… Serial.list()[5]; “ in der eckigen Klammer [5] eingegeben habe, da unter Arduino > Hardware > Schnittstelle der Port 8 an 5. Stelle aufgeführt ist!
    Zudem muss der Serielle Monitor in Arduino geschlossen werden.

    Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.