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.

[参考译文] TMS320F2.8377万S:在LAUNCXL-F2.8377万S上启动USB

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

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/653260/tms320f28377s-starting-usb-on-launchxl-f28377s

部件号:TMS320F2.8377万S
主题中讨论的其他部件: C2000WARE

您好,

我想在TMS320F2.8377万S上使用USB。 我使用的是LAUNCHTXL-F2.8377万S板。

我正在修改USB_DEP_BULK示例(此主板未执行此操作) and...it不起作用! :)

我正在Linux上进行开发。

我做了什么:

*在GPIO84和85上配置SCIA

*配置USB以使用GPIO42和GPIO43

*在GPIO99上配置VBUS引脚

*在GPIO92上配置ID。

*禁用USB0PFAULT和USB0EPEN引脚,因为此主板上不存在此引脚(而且似乎不是必需的)。

*将 GPIO42 和GPIO43 (J1/10和J1/9)连接到USB连接器,插针D+和D-

*将USB GND连接到板GND

*在USB VCC上串行添加200Kohm,并将电阻器的另一侧连接到GPIO99 (J6/53)

*将GPIO92 (J6/52)连接到电路板VCC。

我在调试中运行示例,将USB电缆连接到我的计算机并在计算机上启动dmesg命令:


[USB] 1.1432万.862717</xmt-block>86.2717万 1-2:使用xhci_hcd的新低速设备编号29
[USB] 1.1432万.978762</xmt-block>97.8762万 1-2:设备描述符读取/64,错误-71
[USB] 1.1433万.198737</xmt-block>19.8737万 1-2:设备描述符读取/64,错误-71
[USB] 1.1433万.421733</xmt-block>42.1733万 1-2:使用xhci_hcd的新的低速设备编号30
[USB] 1.1433万.537741</xmt-block>53.7741万 1-2:设备描述符读取/64,错误-71
[USB] 1.1433万.759711</xmt-block>75.9711万 1-2:设备描述符读取/64,错误-71
[USB1] 1.1433万.867746</xmt-block>86.7746万 USB1-port2:尝试重启
[USB] 1.1434万.503715</xmt-block>50.3715万 1-2:使用xhci_hcd的新的低速设备编号31
[USB] 1.1434万.504209</xmt-block>50.4209万 1-2:设备未响应设置地址。
[USB] 1.1434万.708220</xmt-block>70.822万 1-2:设备未响应设置地址。
[USB] 1.1434万.915720</xmt-block>91.572万 1-2:设备不接受地址31,错误-71
[USB] 1.1435万.029715</xmt-block>2.9715万 1-2:使用xhci_hcd的新低速设备编号32
[USB] 1.1435万.030184</xmt-block>3.0184万 1-2:设备未响应设置地址。
[USB] 1.1435万.236197</xmt-block>23.6197万 1-2:设备未响应设置地址。

我是做错了什么,错过了什么…… ?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    经过一些测试后,我有许多未解决的问题:
    *我正在寻找USB和TMS320F2.8377万xS的原理图来检查我的原型。 我没有找到任何关于它的应用说明或演示(或其他任何内容)。
    *我看到库的最新版本可以在C2000ware上找到。 所以我安装了它的最后一个版本,查看了源代码并包含了项目。 再次没有USB示例。
    *我尝试使用新的USB库运行项目,但它没有链接。 然后,我发现一个标记为"已过时"的项目(与我以前的基础项目相同),但它似乎使用了新库。

    这一点根本不清楚。 是否有任何帮助?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以在C2000Ware的/boards文件夹中找到USB连接器的示意图。 请参见F2.8379万D rev 1.3 controlCARD的示意图。 这将向您展示我们如何布置USB电路和连接。

    此外,您还可以在C2000Ware中找到F2837xD和F2837xS设备的USB示例。 您可以为Launchpad修改这些设置。

    您似乎已经意识到了这一点,但在F2837xS Launchpad上,没有连接到板上USB GPIO引脚和PHY的USB连接器。 但是,我们的controlCARD确实提供了这样的USB小型连接器。

    希望这有所帮助。

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

    您好,Sal,

    感谢您的回答。

    我终于成功地使这个例子奏效了。

    * D+和D-引脚应设置为微控制器上的USB0引脚(如上所述)

    * USB辅助时钟应更改为60 MHz,这意味着:

    SysctlAudxClockSet (sysctl_OSCSRC_XTAL | sysctl_PLL_enable |)
    sysctl_IMULT(12)| sysctl_SYSDIV(2)); 

    现在计算机上检测到我的设备。

    我正在处理微控制器和计算机之间的数据交换。

    串行总线/printf不工作。 我正在努力

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

    要使串行总线正常工作,还必须更改时钟:

    *将系统时钟更改为使用10MHz Quartz (在启动板上)以200MHz运行:

    SysCrtlClockSet ( sysctl_OSCSRC_XTAL | sysctl_PLL_enable | sysctl_IMULT (10)|
    sysctl_SYSDIV (2)); 

    *对于sysctl.h中的库,请将外部时钟值设置为石英值(10MHz)

    #define system_clock_speed 1000万 

    现在,**USB_DEP_BULATL_cpu01**示例适用于具有TMS320F2.8377万S的Launchpad XL

    我在使用USB lib时遇到了其他问题,但这可能是理解lib如何工作的问题