技术开发 频道

.Net MF新特性:Usb双接口支持

  3.一个双接口通信的例子
  
  驱动程序等等安装完毕,准备停当之后,我们需要编写两部分程序来调试USB应用。一是普通Windows USB读写程序,二是开发一个.Net Micro Frame USB Device应用程序,来响应Windows平台的USB读写程序。

  我们的程序很简单,实现一个转发功能,也就是把Windows平台的USB程序发送的数据,原封不动的发送回去。代码如下:

1 using System;
2 using Microsoft.SPOT;
3 using System.Threading;
4 using Microsoft.SPOT.Hardware;
5 namespace USBDeviceTest
6 {
7     public class Program
8     {
9         public static void Main()
10         {
11             byte[] bytData=new byte[1024];
12             YFInterop.MFNative.Usb_Open(0);
13             while (true)
14             {
15                 int intSize=YFInterop.MFNative.Usb_Available();
16                 if (intSize > 0)
17                 {
18                     if (YFInterop.MFNative.Usb_Read(bytData, 0, intSize) == intSize)
19                     {
20                         string strData = intSize.ToString()+":";
21                         for (int i = 0; i < intSize; i++)
22                         {
23                             strData += bytData[i].ToString() + " ";
24                         }
25                         Debug.Print(strData);
26                         YFInterop.MFNative.Usb_Write(bytData, 0, intSize);
27                     }
28                 }
29                 Thread.Sleep(3);
30             }
31             YFInterop.MFNative.Usb_Close();
32         }
33     }
34 }

 

  注:测试时,VS2008可以一直处在调试模式(可即时打印调试信息),此时USB Test程序同时完成数据收发。

0
相关文章