我是Android应用的新手。我想从我的arduino Uno R3读取数据,并使用串行电缆和OTG适配器在我的应用程序上显示它。
虽然,我无法让我的UsbManager识别我的设备。因此,当我尝试建立连接时,它总是会失败。 这是我的代码中我发起一切的部分。
public UsbManager = mUsbManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_depth);
setupActionBar();
textView = (TextView) findViewById(R.id.textView2);
mUsbManager = (UsbManager) getSystemService(Context.USB_SERVICE);
button = (Button) findViewById(R.id.buttonStart);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
textView.setText("Bravo");
updateDevice();
if (mRunning == true) {
receiveThread();
}
}
});
}
public void updateDevice() {
Intent intent= getIntent();
String action = intent.getAction();
UsbDevice device = (UsbDevice) intent.getParcelableExtra(UsbManager.EXTRA_DEVICE);
if (device != null){
Toast.makeText(this, "Initialisation 1", Toast.LENGTH_SHORT).show();
initDevice(device);
}
if (UsbManager.ACTION_USB_DEVICE_ATTACHED.equals(action)) {
Toast.makeText(this, "Initialisation", Toast.LENGTH_SHORT).show();
initDevice(device);
} else {
initDevice(null);
}
}
(...) //Obviously, this is not in my code!!
private boolean initDevice(UsbDevice device) {
mConnection = mUsbManager.openDevice(device);
if (mConnection == null) {
if (DEBUG) Log.e(TAG, "Opening USB device failed!");
Toast.makeText(DisplayDepth.this, "open failed", Toast.LENGTH_SHORT).show();
return false;
}
它总是在这里失败(我得到了祝酒词“开启失败”)。 我添加到我的清单所需的内容,因此我的arduino r3被识别,并且当我将其插入手机时始终显示连接消息....需要帮助!!! 谢谢