使用int值或字符串值的串行通信

时间:2019-06-17 08:40:43

标签: java

我正在创建一个代码,将png图像(黑白rgb)转换为二进制图像,其中black=1white=0在处理软件上,并通过串行通信将该二进制图像发送到arduino。

现在的问题是,我的二进制图像是int值,但是我想要字符串值并将此字符串值在二进制图像的行中发送到arduino。值是int值。告诉我我的代码有什么问题。

我想按行enter image description here以字符串形式发送二进制图像值。

*import processing.serial.*;

Serial myPort;

PImage img;

void setup()
{
  size(100, 100);
  noLoop();
  img = loadImage("apple.png");
  img.loadPixels();
  myPort = new Serial(this, "COM6", 115200);
}

void draw()
{
  image(img, 0, 0, 100, 100);

  for (int y = 0; y < height; y++) {
    for (int x = 0; x < width; x++)
    {
      int i = x + y * width;
      if (img.pixels[i] == color(0, 0, 0)) {
        i = 1;
      } else {
        i = 0;
      }

      String s = Integer.toString(i);
      print(s);
      myPort.write(s);
      delay(2);
    }
    if (img.pixels.length > img.width) {
      print('\n');
    }
  }
}

0 个答案:

没有答案