This example is for Wiring version 0027+. If you have a previous version, use the examples included with your software. If you see any errors or have comments, please let us know.
Serial Input by BARRAGAN
Demonstrates how to read data from the serial port. If the data received is an 'H', the light turns ON, if it is an 'L', the light turns OFF. The data comes from a computer running a Processing program, it sends an 'H' if the mouse is over a rectangle otherwise it sends an 'L'.
Demonstrates how to read data from the serial port. If the data received is an 'H', the light turns ON, if it is an 'L', the light turns OFF. The data comes from a computer running a Processing program, it sends an 'H' if the mouse is over a rectangle otherwise it sends an 'L'.
int val; // variable to receive data from the serial port int ledpin = 48; // Wiring board LED void setup() { pinMode(ledpin, OUTPUT); // pin 48 (on-board LED) as OUTPUT Serial.begin(9600); // start serial communication at 9600bps } void loop() { if( Serial.available() ) // if data is available to read { val = Serial.read(); // read it and store it in 'val' if( val == 'H' ) // if 'H' was received { digitalWrite(ledpin, HIGH); // turn ON the LED } else if( val == 'L' ) { digitalWrite(ledpin, LOW); // otherwise turn it OFF } } delay(100); // wait 100ms for next reading } /* Processing code for this example // mouseover serial // by BARRAGAN <http://barraganstudio.com> // Demonstrates how to send data to the Wiring I/O board, in order to // turn ON a light if the mouse is over a rectangle and turn it off // if the mouse is not. // created 13 May 2004 // revised 6 November 2009 import processing.serial.*; Serial port; boolean firstTime = true; void setup() { size(200, 200); noStroke(); // List all the available serial ports in the output pane. // You will need to choose the port that the Wiring board is // connected to from this list. The first port in the list is // port #0 and the third port in the list is port #2. println(Serial.list()); // Open the port that the Wiring board is connected to (in this case #1) // Make sure to open the port at the same speed Wiring is using (9600bps) port = new Serial(this, Serial.list()[1], 9600); } // function to test if mouse is over square boolean mouseOverRect() { return ((mouseX >= 50)&&(mouseX <= 150)&&(mouseY >= 50)&(mouseY <= 150)); } void draw() { // Wait 3 seconds for the Wiring board to start if(firstTime) { delay(3000); firstTime = false; } background(#222222); if(mouseOverRect()) // if mouse is over square { fill(#BBBBB0); // change color port.write('H'); // send an 'H' to indicate mouse is over square } else { fill(#666660); // change color port.write('L'); // send an 'L' otherwise } rect(50, 50, 100, 100); // draw square } */