2013-04-27 65 views
0

我正在使用USB串口。我想讓Nexus從USB讀取數據。使用android從USB串口讀取數據

我找到了示例項目來做到這一點。 here

所以,我克隆了這個項目並且遵守了eclipse。一切運作良好。 我可以安裝並運行我的應用程序。應用程序可以通過使用意圖將其插入Nexus時找到我的USB。

但是,我無法讀取和寫入數據。代碼如下:

protected void onResume() { 
    super.onResume(); 
    mSerialDevice = UsbSerialProber.acquire(mUsbManager); 
    Log.d(TAG, "Resumed, mSerialDevice=" + mSerialDevice); 

    if (mSerialDevice == null) { 
     mTitleTextView.setText(String.valueOf(mSerialDevice)); 
    } 
    else{ 
     ... 
     ... 
    } 
    .... 
} 

我讀了所有的代碼。我發現「mSerialDevice」始終爲空。實際上,else循環是一條讀取數據的指令。我試圖調試,但我找不到任何原因爲空。我需要你的幫助.. :(

預先感謝!

回答

0

現在,我發現解決這個問題的方式。其實,我真的不知道爲什麼它是空,但我改變了這樣做的方式通過使用下面的代碼:

HashMap<String, UsbDevice> deviceList = mUsbManager.getDeviceList(); 
Iterator<UsbDevice> deviceIterator = deviceList.values().iterator(); 
UsbDevice device = null; 
while (deviceIterator.hasNext()) { 
    ... 
} 

我可以讀取廠商ID,產品ID,和等,但我仍然不知道如何在我的USB如果有誰知道,我需要閱讀的文件夾。你有所幫助。

謝謝。