Problem with AD8232 code

edited September 2017 in Arduino

Hello, my name is Vinicius and I have a big problem with my project, I've been working with the AD8232 interface, the main objective is simulate an ECG(Electrocardiogram)program, to turn the layout of my console more realistic as every ECG must be I've added an image of ECG background, however in always moments that I add this image the line of ECG simply disappear, I've tried many types of changes but without success, please I need to send this project in 2 weeks and I don't have idea how can I solve this bloke, I'II lead the code below, thank everyone.

import processing.serial.*;

Serial myPort;        // The serial port

PImage ecg;
int xPos = 1;         // horizontal position of the graph
float height_old = 0;
float height_new = 0;
float inByte = 0;
float x=0;
float y=0;

float spacing=50;


void setup () {
  // set the window size:
  size(1000, 400);        

  // List all the available serial ports
  println(Serial.list());
  // Open whatever port is the one you're using.
  myPort = new Serial(this, "COM3", 9600);
  // don't generate a serialEvent() unless you get a newline character:
  myPort.bufferUntil('\n');
  // set inital background:
  background(238,223,204);
  ecg=loadImage("ECG-full (1).jpg");
}

void draw () {
  // everything happens in the serialEvent()
 image(ecg,100,0);
}

void serialEvent (Serial myPort) {
  // get the ASCII string:
  String inString = myPort.readStringUntil('\n');

  if (inString != null) {
    // trim off any whitespace:
    inString = trim(inString);

    // If leads off detection is true notify with blue line
    if (inString.equals("!")) { 
      stroke(#390606); //Set stroke to blue ( R, G, B)
      inByte = 512;  // middle of the ADC range (Flat Line)
    }
    // If the data is good let it through
    else {
      stroke(0xff, 0, 0); //Set stroke to red ( R, G, B)
      inByte = float(inString); 
     }

     //Map and draw the line for new data point
     inByte = map(inByte, 0, 1200, 0, height);
     height_new = height - inByte; 
     line(xPos - 1, height_old, xPos, height_new);
     height_old = height_new;

      // at the edge of the screen, go back to the beginning:
      if (xPos >= width) {
        xPos = 0;
        background(238,223,204);
      } 
      else {
        // increment the horizontal position:
        xPos++;
      }

  }
}

Answers

This discussion has been closed.