2016-03-30 116 views
2

我有一个Infenion XMC放松套件微控制器,我有一个在visual studio(c#)上制作的GUI,我想将GUI与微控制器连接起来。我不知道如何继续这个。这个控制器只有microusb输入,所以没有串口连接。连接GUI与微控制器

任何帮助将不胜感激或任何建议的教程将不胜感激。

+0

将USB电缆插入microUSB时,它如何在PC上安装? – LPs

+0

它会自动安装所有驱动程序并获得IDE“Dave”的准备 – user5820174

+0

自动安装后系统中是否安装了COM? – LPs

回答

1

试试这个代码来读取数据,并显示它的到来在COM3 ....

// Create the serial port with basic settings....You will need to modify SerialPort("COM3",9600, Parity.None, 8, StopBits.One); to suit your device. 
    private SerialPort port = new SerialPort("COM3", 
     9600, Parity.None, 8, StopBits.One); 

    [STAThread] 
    static void Main(string[] args) 
    { 
     // Instatiate this class 
     new SerialPortProgram(); 
    } 

    private SerialPortProgram() 
    { 
     Console.WriteLine("Incoming Data:"); 

     // Attach a method to be called when there 
     // is data waiting in the port's buffer 
     port.DataReceived += new 
      SerialDataReceivedEventHandler(port_DataReceived); 

     // Begin communications 
     port.Open(); 


     // Enter an application loop to keep this thread alive 

     int MyInt = System.Convert.ToInt32(Console.ReadLine()); 
     byte[] b = BitConverter.GetBytes(MyInt); 
     port.Write(b, 0, 4); 
     Application.Run(); 

    } 

    private void port_DataReceived(object sender, 
     SerialDataReceivedEventArgs e) 
    { 
     // Show all the incoming data in the port's buffer 
     Console.WriteLine(port.ReadExisting()); 
    } 
+1

在此之前,嵌入式板上需要安装许多软件;并且虚拟COM端口不能枚举为COM3。 – Clifford

2

documentation板上有两个USB连接器;一个连接到主XMC4500,另一个连接到另一个充当片上调试接口的XMC4500。要与您的应用程序通信,您需要使用连接到主处理器的一个(标记为“X3”),另一个用于编程和调试设备。

它自己的USB接口不做任何事; USB需要一个实现设备类的软件栈。最简单的设备类实现(因为您的PC操作系统已经有它的驱动程序)是CDC/ACM(或虚拟COM端口)。这将允许您使用.NET System.IO.Ports.SerialPort类与板交换信息。

提到的USB VCP项目here,虽然我找不到相关的代码。也许它包含在开发工具包中,并且你已经拥有了它?

请注意,如果您确实使用片上USB作为设备,则如果您要分发产品,则需要USB供应商ID,除非英飞凌允许开发人员在其商业示例代码中使用VID。

请注意,该部件也有一个UART(即串行端口),毫无疑问会更简单地工作,并需要更少的软件。 UART的I/O可以映射到一对GPIO引脚,然后您可以连接一个TTL UART to USB bridge cable,然后将其直接插入PC串行端口。这具有创建USB连接而无需您自己的VID的优势。

0

如果您在微控制器上有USB端口,您可以通过两种方式与运行在PC或任何其他嵌入式设备上的GUI进行通信,可以使用直接USB电缆,也可以使用COM端口和USB转UART转换器的开发板或外部转换器。如果你有这个转换器,那么你的微控制器的串行端口必须已经使用。

案例1:直接USB - 在这种模式下,你需要在PC端的USB库(如libusb的/了WinUSB),它可以与接口PC USB硬件应用程序。另一方面,应该在微控制器上运行usb库,它可以像PC usb库一样运行。案例2:通过串口 - 将驱动程序安装到USB转换器,然后你可以找到你的设备连接到设备管理器,你可以识别端口号。您可以扫描C#应用程序中连接的COM端口,或手动插入确切的COM端口并使用可与微控制器通信的串行库。