Package testing

Source Code of testing.ArduinoTerminal

package testing;

import processing.core.*;
import processing.serial.Serial;

public class ArduinoTerminal extends PApplet{
 
 


  int bgcolor;           // Background color
  int fgcolor;           // Fill color
  Serial myPort;                       // The serial port
  int[] serialInArray = new int[3];    // Where we'll put what we receive
  int serialCount = 0;                 // A count of how many bytes we receive
  int xpos, ypos;                 // Starting position of the ball
  boolean firstContact = false;        // Whether we've heard from the microcontroller

  public void setup() {
    size(256, 256)// Stage size
    noStroke();      // No border on the next thing drawn

    // Set the starting position of the ball (middle of the stage)
    xpos = width/2;
    ypos = height/2;

    // Print a list of the serial ports, for debugging purposes:
    println(Serial.list());

    // 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()[3];
    myPort = new Serial(this, portName, 9600);
  }

  public void draw() {
    background(bgcolor);
    fill(fgcolor);
    // Draw the shape
    ellipse(xpos, ypos, 20, 20);
  }
 
 

  public void serialEvent(Serial myPort) {
    // read a byte from the serial port:
    int inByte = myPort.read();
   
    System.out.println(inByte);
    // if this is the first byte received, and it's an A,
    // clear the serial buffer and note that you've
    // had first contact from the microcontroller.
    // Otherwise, add the incoming byte to the array:
   
   
    if (firstContact == false) {
      if (inByte == 'A') {
        myPort.clear();          // clear the serial port buffer
        firstContact = true;     // you've had first contact from the microcontroller
        myPort.write('A');       // ask for more
      }
    }
    else {
     
        // Send a capital A to request new sensor readings:
        myPort.write('A');
     
/*
      // Add the latest byte from the serial port to array:
      serialInArray[serialCount] = inByte;
      serialCount++;

      // If we have 3 bytes:
      if (serialCount > 2 ) {
        xpos = serialInArray[0];
        ypos = serialInArray[1];
        fgcolor = serialInArray[2];

        // print the values (for debugging purposes only):
        println(xpos + "\t" + ypos + "\t" + fgcolor);


        // Reset serialCount:
        serialCount = 0;
      }
    */
    }

  }
 

}
TOP

Related Classes of testing.ArduinoTerminal

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.