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.

[参考译文] TMS320F28069F:USB 主机大容量存储应用问题

Guru**** 2553260 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/822041/tms320f28069f-usb-host-mass-storage-application-issues

器件型号:TMS320F28069F

我正在尝试在 F28069FPZT 器件上实现 USB 主机大容量存储应用。

在我的定制板上、我有一个固定的 VBUS、只将 DP 和 PM 连接到插座、在插座中有一个闪存驱动器。

我已经编译了示例 USB_host_msc.c 文件、代码看起来运行正常。

所有寄存器显示已初始化、串行接口的行为符合预期。

电路板通电后、闪存驱动器 LED 会亮起。

但是、我无法连接到驱动器。

串行接口提示符持续显示 nodev、

所有通过串行 UI 连接到器件的尝试 都会返回 FR_NOT _READY。

g_Estate 的值为 State_no_device。

我在 DP 和 DM 线路上看不到任何数据。

是否有人可以确认 F28069FPZT 器件是否具有 USB 外设?

表格显示"F"器件具有板载 USB 模块。

谢谢!

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

    您好!

    您的大容量存储设备是否为 FAT FS?

    它的格式如何?

    SAL

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

    Sal、

    感谢您的回答。

    它目前被格式化为 NTFS。 我可以将其格式化为 FAT。

    不过,我本以为我至少会看到一些数据被传输,至少是为了枚举。 我在 D+和 D-上根本看不到任何数据。

    这是一个逆变器系统的升级、我们已经用了一段时间了。 我们希望增加将数据下载到闪存驱动器的功能。

    谢谢!

    John

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

    该示例适用于 FAT FS。

    无论如何、您应该会看到一些枚举。 您可能没有使用连接到 USB PHY 的正确 USB 连接器。

    您使用的是什么板?

    SAL

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

    Sal、

    电路板是我们自己的设计。 这是一款成熟的牵引逆变器产品的升级版、该产品已投入使用一段时间。

    我们正在尝试添加将数据转储到闪存驱动器的功能。

    我使用 Tyco 1734366-1作为连接器:

    引脚1连接到 VBUS 电源。 它不受控制。

    引脚2通过一个24 Ω 电阻器和 TDK TCE0806G-900-2P-T 共模扼流圈连接到 GPIO27/USB0BM。

    引脚3通过一个24 Ω 电阻器和一个 TDK TCE0806G-900-2P-T 共模扼流圈连接到 GPIO26/USB0BP。

    PIN4被连接至 VBUS COMMON。

    我已经验证了从 GPIO27和 GPIO26到引脚2和3的布线。

    谢谢!

    John

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

    您能获得任何与您的电路板协同工作的 USB 示例吗?

    您能否运行 USB_dev_derial 或其他任何正常工作的主机模式示例?

    如果您甚至无法让它开始枚举、那么我想这与您的电路板有关、而不是与软件有关。

    SAL

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

    Sal、

    这就是我们的连接方式:

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

    SAL

    看起来图像没有通过。 我可以发布图像吗?

    John

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

    Sal、

    "您能获得任何与您的电路板协同工作的 USB 示例吗?

    是否可以运行 USB_DEV_derial 或其他任何正常工作的主机模式示例?"

    未为器件设置硬件。 也许我可以尝试主鼠标应用程序。 看起来非常相似。

    John

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

    Sal、

    我编译并运行了 USB_host_mouse 项目、得到的结果完全相同。

    因此决定验证 GPIO 引脚和 USB 连接器引脚之间的硬件连接。

    我编写了一个小程序、简单地将 GPIO 引脚相互反向切换。

    代码片段:

    //定义

    #define GP26_TOGGLE ()             (GpioDataRegs.GPATOGGL.bit.GPIO26 = 1)
    #define GP27_TOGGLE ()             (GpioDataRegs.GPATOGGL.bit.GPIO27 = 1)

    //初始化:

      GpioCtrlRegs.GPAMUX2.bit.GPIO26=0;
      GpioCtrlRegs.GPADIR.bit.GPIO26 = 1;
      GpioDataRegs.GPASET.bit.GPIO26=1 ;

      GpioCtrlRegs.GPAMUX2.bit.GPIO27 = 0;
      GpioCtrlRegs.GPADIR.bit.GPIO27 = 1;
      GpioDataRegs.GPASET.bit.GPIO27 = 0;

    //在 main()中:

           if (t2_5ms_Flag)
           {
               GP26_TOGGLE ();
               gp27_toggle ();
               T2_5ms_Flag = 0;
           }

    生成的波形如下图所示、其中通道1连接到连接器的引脚3、通道2连接到连接器的引脚2。 GPIO 引脚通过 USB 连接器正确连接。

    我们是否确定 TMS32028069FPZT 具有 USB 外设?

    谢谢!

    John

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

    Sal、

    有什么想法吗?

    我们是否确定 TMS32028069FPZT 具有 USB 外设?

    John

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

    您好!

    很抱歉回复太晚了。 上周我外出了。

    我认为它应该具有外设、因为它是069器件型号。 但是、您可以在数据表中确认。

    SAL