如何从Arduino接收数据?

问题描述:

我想通过串口从Arduino接收1(高)或0(低)数字引脚值。如何从Arduino接收数据?

我无法读取用下面的代码的任何数据:

byte[] bbuffer = new byte[1]; 

try { 
    mInputStream.read(bbuffer); 
} 
catch (IOException e) { 
    new Exception("Arduino-Board antwortet nicht! Timeout!!"); 
} 

if (bbuffer[0] == (byte)1){ 
    PinValue.setText("HIGH"); 
} 
else if (bbuffer[0] == (byte)0){ 
    PinValue.setText("LOW"); 
} 
+0

请注意代码格式。这次我已经为你修好了 – Merlin 2012-08-09 01:46:30

你不给你的问题有关的相关信息:你如何设置的InputStream

但你的代码表明一些缺陷不过:

mInputStream.read(bbuffer);

InputStream.read常规协定是,你必须检查read返回值。如果read返回零或负数,则bbuffer的内容不变。

新异常(“Arduino-Board antwortet nicht!Timeout !!”);

您只有创建一个新的例外,但你不要扔它。您必须将throw添加到该行。