两个微控制器之间的USB接口

两个微控制器之间的USB接口,usb,Usb,我的任务是为一个嵌入式系统编写一个设备驱动程序,该系统有两个通过USB接口的微控制器。两个控制器之间的数据传输将通过USB进行。 我在阅读USB规范时面临困难。 哪个USB类适用于两个控制器之间的通信?USB是一种非对称协议,其中有主机和设备,主机是发起所有通信的主机。该设备可以符合USB设备类,或者您的设备只能具有不符合任何特定类的供应商定义的接口 在不了解微控制器之间发送的数据的情况下,我建议只使用供应商定义的接口(USB设备类代码0xFF)。主机可以在端点0上启动自定义控件传输,该端点在主

我的任务是为一个嵌入式系统编写一个设备驱动程序,该系统有两个通过USB接口的微控制器。两个控制器之间的数据传输将通过USB进行。 我在阅读USB规范时面临困难。
哪个USB类适用于两个控制器之间的通信?

USB是一种非对称协议,其中有主机和设备,主机是发起所有通信的主机。该设备可以符合USB设备类,或者您的设备只能具有不符合任何特定类的供应商定义的接口

在不了解微控制器之间发送的数据的情况下,我建议只使用供应商定义的接口(USB设备类代码0xFF)。主机可以在端点0上启动自定义控件传输,该端点在主机和设备之间传输任意数据。您还可以使用批量/中断/等时端点来传输数据

USB CDC ACM类用于虚拟串行端口,它提供了在主机和设备之间来回发送字节的方法;许多设备将其用于通用通信机制

HID(人机界面设备)类是为键盘之类的东西设计的另一个类,但它也可以用于一般通信


使用USB设备类的要点是,它允许您利用不同操作系统为这些类型的设备提供的内置驱动程序,而无需编写自己的驱动程序。您可以查看主机微控制器是否为这些设备类别之一提供了特殊的USB驱动程序。如果没有,那么使用USB设备类就没有多大意义。听起来您将在USB电缆的两端编写代码,并且您不打算将您的设备插入任何其他类型的USB主机,因此没有必要强制您的协议符合USB类。

更多详细信息如何,比如您的控制器?Beaglebone black和Kinetis KL25z是我的两个控制器谢谢。我的设备(KL25z)有USB CDC端口可用。我可能需要在主机端编写代码。