This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28386D:USB CDC 设置

Guru**** 2457760 points
Other Parts Discussed in Thread: C2000WARE

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1078462/tms320f28386d-usb-cdc-setting

部件号:TMS320F28386D
“线程:C2000WARE”中讨论的其它部件

您好,

我们希望实现对 C2000Ware 示例 C:\ti\C2000Ware_3_04_00_00\driverlib\f2838x\examples\C28x\USB\USB_ex1_serial_struct 的 USB CDC 设备引用。

一些问题:

1.硬件中的实际发射比特率是多少? 60赫兹(通过自动轮辋牵引)?  但 TRM 表示全速(12Mbps)或低速(1.5Mbps)?如何 决定?

2. USB 连接触发是否每1毫秒修复一次? 它是否可调整?

3.一些 USB 磁带库调用 Interrup_disableMaster()来暂停所有中断(在 usbddfu_rt.c 和 usbringbuf.c 中)。 它可能会暂停我们较高优先级的中断(如运动控制)。 我们不能调用 Interrup_disableMaster()吗? 下面是我们的 USB 中断 功能。

4.继续以上操作,为什么 CM 没有必要暂停诸如 usbddfu_rt.c 和 usbringbuf.c 中的 CPU( Interrup_disableMaster()等中断?

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,弗雷德里克,

    我将请求我们团队的 USB SW 专家就您的大部分问题发表评论。

    [引用 userid="464815" url="~ë/support/icros/c2000-微控制器-组/CC2000 /f/c2000-微控制器-论坛/1078462/tms320f28386d-usb-cdc-设置]1. 硬件中的实际传输比特率是多少? 60赫兹(通过自动轮辋牵引)?  但 TRM 表示全速(12Mbps)或低速(1.5Mbps)?如何 决定?

    在设备模式下,F2838x USB 以全速(12 Mbps)运行。 在主机模式下,它可以与全速(12 Mbps)或低速(1.5 Mbps)设备连接。 这取决于 USB 接口的连接情况。

    最佳

    凯文

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,弗雷德里克

    1. USB_dev_serial 示例使用批量端点。 使用 USB_DEP_serial 示例,最大值为128字节/毫秒。  

    我们已经能够使用批量传输实现7到8 Mbps (875 kb/s - 1 Mb/s)的吞吐量。 这略低于最大全速12 Mbps。 您可以参考 USB_Ex9_dev_buld_throughput 来实现此目的。

    2. USB 堆栈由中断驱动,  在接收数据和传输数据时触发中断。  

    3.interrup_disableMaster   在 usbddfu_RT.c 文件中被调用,因为它进入 DFU 模式, 控制被传输到 启动加载程序,以准备从主机升级固件。 在 usbringbuf.c 中,它禁用并启用中断。 这样做是为了防止读取索引损坏的可能性。  

    4.我无法理解你的问题,你能提供更多的细节。

    此致

    西达尔斯

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    对于第四 个问题,它仅在  __TMS320C28XX__中调用 Interrup_disableMaster,例如下图。

    为什么 CM 不需要它?

    谢谢你

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,弗雷德里克,

    我们会再来看一下,并返回给您  

    此致

    西达尔斯