我们正在开发一种由CAN和USB(设备模式)组成的设备.Via USB,CAN消息(消息波特率最高可达1Mbps,消息频率最高可达1条消息/ 5毫秒秒)等数据(示例设置数据)将在PC和我们的H / W(两个方向)之间传输。
我正在使用德州仪器TM4C123GH6PM MCU.TI支持下面给出的6个标准类 1)音频设备类 2)CDC设备类 3)复合设备类 4)设备固件升级设备类 5)HID设备类 6)大容量存储设备类
他们还支持一个名为“Bulk Device Class”的类,它在端点上有1个批量,在端点上有1个批量。
这是为我的应用程序(HID设备类或批量设备类或CDC设备类或任何其他方法)实现USB驱动程序的更好方法,以便我可以尽快将所有消息传输到PC或从PC传输。
我们还计划开发一种PC工具来显示CAN消息并配置H / W?
我正在考虑去CDC设备类?因为我认为批量传输方法比我的应用程序的中断传输方法更好,只有批量设备类和CDC设备类正在使用它。
与Bulk Device Class相比,CDC是一个标准类,它不需要任何驱动程序和应用程序开发也很容易。 我以前没有任何USB经验。我做出了正确的决定吗?请帮帮我?
答案 0 :(得分:0)
您的USB设备没有任何特定功能/协议,仅用于传输原始数据。为此,我认为最好只使用Bulk only类,它只有两个端点,更容易使用。 对于其他类,您还必须实现特定于类的功能描述符,这不是一项简单的任务。
但是,如果您有任何时间敏感数据,那么它是一个不同的情况,因为批量端点不保证及时交付。那么在你将拥有可以使用的中断端点的情况下,最好使用CDC。