我正在使用处理IDE创建二进制图像。并通过串行通信将图像的二进制值发送到arduino。图像为二进制格式,串行通信正常。但是在此代码中,串行通信中i的int值和s的String值将值写入0-> 10000;但我想发送图像的按行值。
import processing.serial.*;
Serial myPort;
PImage img;
PImage img1;
PrintWriter output;
String s;
int i,j;
void setup()
{
img = loadImage("vl.png");
size(100,100);
img.loadPixels();
output = createWriter("danish.txt");
myPort = new Serial(this, "COM6", 115200);
noLoop();
}
void draw()
{
image(img, 0, 0,100,100);
for (int y=0; y<height; y++)
{
for (int x=0; x<width; x++)
{
i= x+y*width;
if (img.pixels[i] == color(0,0,0))
{
i=1;
} else
{
i=0;
}
String s = str(i);
print(s);
myPort.write(s);
}
if(img.pixels.length > img.width)
{
print("\n");
}
}
}
0101010101010101010101010 0101010101010101010101010 0101101010101010101010010
我想像这样逐行发送串行数据。请提供一些对我有帮助的解决方案。在此先感谢您的帮助和支持