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.

[参考译文] MSP430F5638:获取在 5638 上运行的 USB CDC 示例

Guru**** 2362820 points
Other Parts Discussed in Thread: MSP430F5529, MSP430F5638
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1521187/msp430f5638-getting-a-usb-cdc-example-running-on-the-5638

部件号:MSP430F5638
主题中讨论的其他器件:MSP430F5529

工具/软件:

我使用的是 TI USB 开发人员包 CDC 示例:C0_SimpleSend、使用 CCS v.12.8.1.00005 在 MSP430F5529 LaunchPad 上构建、加载和运行良好。

我需要使其在我使用 MSP430F5638 MCU 的定制 SBC 上运行。 只需通过 USB 将数据以文本形式发送到主机 PC 即可。 此示例通常执行我需要的操作。

已将上述示例复制到新的工作区中。

将工程 MCU 从 F5529 更改为 F5638、它在 CCS 中构建良好、但最初不会加载到 MCU 中 — 这个问题似乎已经解决。 但现在我不能重新加载任何程序,收到错误:

MSP430:初始化仿真器时出错:MSP-FET430UIF 已在使用中

已将所有设备断电并通电多次 — 我甚至无法加载以前可正常工作的其他程序

1.什么是导致“已在使用“的问题?

2.在本示例中,我需要更改什么才能使其在 5638 上运行? 我使用 PU 来实现 USB。

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

    尊敬的 Ted:

    您能否参考 e2e 链接下方类似主题线程中的建议、它似乎与 设备管理器检测到的 MSPFET 的驱动程序有关:

    (+) MSP430FR2355:MSP-FET430UIF 已在使用中 — 这些年来仍然疯狂... - MSP 低功耗微控制器论坛 — MSP 低功耗微控制器 — TI E2E 支持论坛

    (+) MSP430FR6989:初始化仿真器时出错:MSP-FET430UIF 已在使用 — MSP 低功耗微控制器论坛 — MSP 低功耗微控制器 — TI E2E 支持论坛

    此致、

    Pengfei

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

    嗨、Pengfei、

    感谢您的答复。 第一个问题消失了-“MSP-FET430UIF  已在使用“问题。 我不知道为什么它消失了,没有做任何更改,只是断电和备份 3-4 次 2 天. 现在我可以加载先前的工作代码、并且在我的 MSP430F5638 上运行正常。

    我还有问题 2:

    2.在这个 USB CDC C0_SimpleSend 示例中、要使其在 5638 上运行、我需要更改什么? 我使用 PU 来实现 USB。

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

    尊敬的 Ted:

    您是否尝试在 F5638 中直接应用 USB 示例? USB 器件无需更改、只需更改器件相关器件(如引脚定义)即可进行迁移。

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

    我浏览过几个文件、但找不到。 具体来说、我必须编辑哪些文件?

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

    尊敬的 TES:

    您不需要更改 USB 驱动程序。 例如、默认 USB 示例将 P1.0 用于 LED 输出、您可以在 F5638 中将其更改为所需的引脚。

    您是否尝试直接应用 F5638 中的示例、是否弹出任何错误消息?

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

    是的、我将使用 MSP430F5638 构建并加载到定制 SBC。 运行大量代码时、该电路板工作正常。 对于这个初始 USB 开发、我仅编译、加载和运行 C0_SimpleSend 示例、没有其他代码。 它构建良好,似乎加载正常 — 但我看到没有通过 USB 连接到 PC 上的终端。 正如我之前所说的、我不使用端口 P1 到 P9、而是使用专用的 USB 端口 PU。

    我在设备管理器中看到:未知 USB 设备(设备描述符请求失败)

    MSP430F5638 的 PID 是什么? 以及如何做“器件描述符“?

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

    尊敬的 Ted:

    我懂了。  

    有关 PID 修改、请参阅  2.6 更改 VID/PID 时要小心   和 表 2. MSP430 USB API 应用示例和 PID 映射   示例指南

    但基本上、对于相同类型的 USB 示例、您不需要更改 PID。 您是否对 USB 设备类进行了任何更改?

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

    嗨、Pengfei、

    没有任何更改、正常工作的 C0_SimpleSend 工程已从 5529 工作区复制到 5638 工作区。 descriptors.h 文件未更改 VID / PID = 0x2047/0x300。 工程中根本不更改代码。

    我最好的猜测是、在预设示例中、我错过了一个步骤、该步骤已经完成。 我可以运行描述符工具、但不知道如何使用它。 如何将其与新工程绑定? 但如果 VID /PID 是相同的、我是否还需要运行它?

    设备管理器显示:未知 USB 设备(设备描述符请求失败)

    TED

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

    尊敬的 Ted:

    我想您可以从硬件方面进行检查。 请参阅  4 MSP430 USB 硬件设计 使用 MSP430 开始 USB 设计 USB 硬件指南。 尤其是对于 XT2 振荡器、以确保其在振荡器中具有正常的时钟波形。

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

    我的 SBC msp430f5638 XT2 在带有晶体的 20MHz 下运行

    msp430f5529 LaunchPad XT2 使用 4MHz 谐振器

    在 msp430f5638.h 中查找 USBPLL_SETCLK_xx_yy 时、20MHz 没有匹配项、跳过从 19.2 到 24MHz

    在代码中将 USBPLL_SETCLK_xx_yy 设置在哪里?

    我是否必须更换 SBC 上的 XT2 晶体?

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

    尊敬的 Ted:

    您不需要更改您使用的 XT2 晶体、您可以使用 MSP430 中的 PLL 为 USB 生成所需的 48MHz 时钟、请参阅  4.3 选择时钟配置  使用 MSP430 MCU 启动 USB 设计的 步骤(修订版 B)以进行时钟配置。

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

    我已经阅读了第 4.3 节两次、它没有告诉您任何信息。  在代码中将 USBPLL_SETCLK_xx_yy 设置在哪里?

    在该预设示例中、步骤太多(预设且未涵盖)- C0_SimpleSend 使其在不同的 MSP430 MCU 上运行。

    这需要提高技术支持水平。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引述 userid=“120424" url="“ url="~“~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1521187/msp430f5638-getting-a-usb-cdc-example-running-on-the-5638/5864761 #5864761“]

    我的 SBC msp430f5638 XT2 在带有晶体的 20MHz 下运行

    msp430f5529 LaunchPad XT2 使用 4MHz 谐振器

    在 msp430f5638.h 中查找 USBPLL_SETCLK_xx_yy 时、20MHz 没有匹配项、跳过从 19.2 到 24MHz

    [/报价]

    对于 PLL 设置、您可以使用我随附的计算器。 再也不记得什么是可接受的 USB PLL 容差。 如果高于 6410、USB 应该可以与 20MHz XT2 配合使用。

    e2e.ti.com/.../5582.MSP430USBCalc.zip

    编辑:2500 ppm 是 USB 规范允许的最大容差、因此遗憾的是 USB 无法与 20MHz XT2 配合使用。

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

    谢谢、MSP430F5638 且仍可用于 USB 的最大 XT2 频率是多少?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢、那么 MSP430F5638 且仍可用于 USB 的最大 XT2 频率是多少?

    19.2MHz 是接近 20MHz 的晶体标准值。

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

    我的问题没有得到解决、但这篇文章已变得太长和复杂。 将关闭此项并以更精确的方式重新发布。

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

    谢谢 Zrno、我为 20MHz 跑了这个并确认了您的号码 — 看起来我必须更改 XT2。 当 PLLCLK = 48MHz 且 ACC = 0ppm 时、24 和 32MHz 看起来都很好。

    6410 与 0 和 2500ppm 相比如何? 为什么会出现负面影响?