Schlagwort-Archive: Serial

Der PE4302 Attentuator / Dämpfungsglied ist vom PC steuerbar über einen Arduino

Das Dämpfungsglied mit dem PE4302 Chip soll seriell einstellbar sein und vom PC aus angesprochen werden können.

Dazu nehme ich die Schaltung vom vorherigen Beitrag und erweitere die Arduino Software für die serielle Steuerung.

Diese seriellen Kommandos können im Seriellen Monitor des Arduino Programms eingegeben werden und werden dann zum Arduino geschickt, der entsprechende Aktionen auslöst.

Die Kommandos sind:
s : set attentuator. Examples: s1.5 | s0 | s 22.5 | s 31 | s 0.0
g : get actual attentuator value
d : device class Weiterlesen

Eine LED mit Processing schalten und den Status zurück bekommen vom Arduino

Die LED 13 auf dem Arduino Board soll nun von einem Processing Fenster aus umgeschaltet werden per Maus. Danach gibt der Arduino den Status der LED zurück in das Processing Fenster.

Das Processing Fenster reagiert einmalig auf den Mausklick in das Fenster und sendet dann abwechselnd eine 0 oder 1 an den Arduino. Dieser schaltet die LED um und gibt den LED Status als String zurück. Der String vom Arduino aus println hört mit \n auf. Das wird in Processing auch als Ende des Strings erkannt mit readStringUntil(‚\n‘).

Das Processing Text Ausgabe Feld im Windows Fenster muss erst mit einem leeren Rechteck abgedeckt werden und dann wird neuer Text drüber geschrieben.

Hier das Arduino Programm

// Arduino LED bei Mausklick umschalten
// aus einem Processing 3+ Fenster
// mit Status Rückmeldung vom Arduino
//
// Matthias Busse 19.3.2017 Version 2.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 wert speichern
    if (wert== '1') {                // 1 heisst einschalten
      digitalWrite(led, HIGH);       // LED einschalten
      Serial.println("LED ist an");  // Rückgabe
    }
    else {
      digitalWrite(led, LOW);        // LED ausschalten
      Serial.println("LED ist aus"); // Rückgabe
    }
  }
}

Das Processing 3.3 Programm Weiterlesen

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 Weiterlesen