如何从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");
}
答
你不给你的问题有关的相关信息:你如何设置的InputStream
?
但你的代码表明一些缺陷不过:
mInputStream.read(bbuffer);
的InputStream.read
常规协定是,你必须也检查read
返回值。如果read
返回零或负数,则bbuffer
的内容不变。
新异常(“Arduino-Board antwortet nicht!Timeout !!”);
您只有创建一个新的例外,但你不要扔它。您必须将throw
添加到该行。
请注意代码格式。这次我已经为你修好了 – Merlin 2012-08-09 01:46:30