我製作了一個USB HID設備(pic18f2550和DS1820)。我使用的是Visual Studio 2010,C#,.NET 4.0 Framework,最新版本的MVVM light toolkit以及來自Florian Leitner的usb HID驅動程序(用於從hid.dll導入函數的工具[DllImport(「hid.dll 「)],用於閱讀的線程等)使用MVVM光工具包和USB通信的奇怪問題
首先,我使用代碼隱藏功能製作了非常輕的界面,用於測試設備和計算機之間的通信。一切正常,我的設備被檢測到並且信息被讀取並且可以毫無問題地顯示。爲了學習使用這個工具包,我還決定實現MVVM模式。
我已經爲我的usb設備製作了一個模型類,與我的第一個程序使用相同的代碼。這個類實現了一個默認的構造函數,它創建了新的UsbInterface(no souci)並啓用了連接。
此構造函數使用Visual Studio單元測試進行測試,所有的罰款,設備連接。
該界面有一個按鈕,RelayCommand和一個Action,它們在按下按鈕時調用我的模型的默認構造函數。 (查看<→ViewModel→Model)
使用調試,調用默認構造函數,創建新的UsbInterface,但Connection始終返回false。
我真的不知道附件是什麼。
我的USB設備似乎運行良好,來自Florent Leitner的USB HID類可以使用正常的WPF應用程序和我的ModelClass。
但是這個非常基本的ModelClass(和Usb類)沒有運行在這個模式上。
默認構造
public TemperatureModel()
{
usb = new USBInterface(」vid_04d8″, 「pid_003f」);
_InterfaceConnected = usb.Connect();
if (_InterfaceConnected)
{
usb.enableUsbBufferEvent(new EventHandler(TraitementReception));
}
}
使用具有後面代碼簡單WPF應用程序,_InterfacConnected爲真(如果我的設備連接)
使用在MVVM溶液的Visual Studio單元測試,_InterfacConnected爲真(如果我的設備
使用MVVM解決方案,點擊按鈕,呼叫RelayCommand並調用默認的構造函數TemperatureModel連接),_InterfaceConnected總是FALSE
有人有想法嗎?
問候 埃裏克
你可以發表代碼在哪裏使用RelayCommand並調用USB設備的代碼? – Rumplin