Processing + Arduino projects

Here I will be posting some of the processing + arduino projects I make :)

Testing outputs (Firmata)


    import processing.serial.*;
  import cc.arduino.*;
  Arduino arduino;
  
  void setup() {
  size(200, 200);
  noLoop(); // Fuerza a no realizar el bucle del programa
  println(Arduino.list()); // Imprime la lista de puertos COM
  }
  void draw() {
  }
  

Activation of multiple outputs


    import processing.serial.*;
  import cc.arduino.*;
  Arduino arduino;
  color off = color(4, 79, 111); // Definimos los colores del botón en estado off
  color on = color(84, 145, 158); // Definimos los colores del botón en estado on
  // designamos en un array de tamaño 13 el estado de cada una de las entradas
  int[] values = { Arduino.LOW, Arduino.LOW, Arduino.LOW, Arduino.LOW,
  Arduino.LOW, Arduino.LOW, Arduino.LOW, Arduino.LOW, Arduino.LOW,
  Arduino.LOW, Arduino.LOW, Arduino.LOW, Arduino.LOW, Arduino.LOW };
  void setup() {
  size(470, 200);
  println(Arduino.list()); // Mostramos los puertos detectados
  arduino = new Arduino(this, Arduino.list()[1], 57600);
  for (int i = 0; i <= 13; i++) // Configuramos los pines 0 al 13 como salidas
  arduino.pinMode(i, Arduino.OUTPUT);
  }
  void draw() {
  background(off);
  stroke(on);
  for (int i = 0; i <= 13; i++) { // se testea el estado del array de estados de salidas
  if (values[i] == Arduino.HIGH)
  fill(on); // se pone el color de on si esta en estado alto
  else
  fill(off); // se pone el color de off si esta en estado bajo
  rect(420 - i * 30, 30, 20, 20);
  }
  }
  // Procedimiento para detectar si el ratón se ha pulsado sobe uno de los botones
  void mousePressed()
  {
  int pin = (450 - mouseX) / 30;
  if (values[pin] == Arduino.LOW) {
  arduino.digitalWrite(pin, Arduino.HIGH);
  values[pin] = Arduino.HIGH;
  } else {
  arduino.digitalWrite(pin, Arduino.LOW);
  values[pin] = Arduino.LOW;
  }
  }