1

我得到

E/xx( 5508): java.io.IOException: write failed: ENODEV (No such device)
E/xxx( 5508):   at libcore.io.IoBridge.write(IoBridge.java:462)
E/xxx( 5508):   at java.io.FileOutputStream.write(FileOutputStream.java:187)
E/xxx( 5508):   at java.io.OutputStream.write(OutputStream.java:82)

从我的果冻豆设备向 Arduino 写入(通过 USB)数据时。Android中用于编写的代码是

try {
           String buff = new String(v.getText().toString());
           buff += '\0';
           mOutputStream.write(buff.getBytes());
} catch (IOException e) {
           Log.e(TAG, "write failed", e);
}

在arduino中阅读的代码是

  while (Serial.available()) {
    char inChar = (char)Serial.read(); 
    inputStringFromSerial += inChar;
    if (inChar == 0xd) { // inchar == '\n'
      stringComplete = true;
    } 
  }

即使我的 Android 可以自动检测到配件并自动启动我的应用程序,我也无法写入或读取 Arduino。权限也正确获得

另外,我从哪里可以获得最新的 Arduino ADK 库?有些库需要 acc.powerOn() 而有些需要 acc.begin() 才能启动。哪个是最新的?

我让它工作了一次,没有任何代码更改。但只有一次,之后没有:(

4

1 回答 1

0

错误消息表示设备不再连接。我怀疑您的应用程序的其他部分或另一个应用程序中的某些代码也在尝试连接到同一个附件。

如果您使用的是 Arduino ADK 板或 Arduino + USB Host Shield,那么您可以从https://github.com/felis/USB_Host_Shield_2.0获取最新的库

于 2012-11-26T05:06:36.813 回答