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.

[参考译文] TM4C123GH6PM:通信器件类

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/600190/tm4c123gh6pm-communication-device-class

器件型号:TM4C123GH6PM

我需要开发 一个 USB 应用、用于在  PC 和微控制器之间传输数据。 数据 的长度可以在2B 到64B 之间变化。 它必须高速传输。

我认为通信设备类适合我的应用。

我找到 了一个针对这个- USB 串行器件的示例程序。 我在 互联网上看到   通信设备类可以在 PC 上创建虚拟串行端口。

问题1) 在应用程序中 、为什么他们使用 USART 硬件来传输数据?  从 USB CDC 接收到的数据在 示例程序(USB 串行器件)中使用 UART 进行传输。

问题2)使用   USB CDC 创建虚拟串行端口是否需要 UART?

问题3)在 USB CDC 的"tLineCoding"结构中包含波特率。   此波特率是否 与 USB 发送和接收速度(中断输入、批量输入和批量输出速度)有关?

问题4)在我的应用中、我需要 USB 2.0的最大速度。  如何设置?

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

    我是否可以"赞扬"您在撰写清晰详细的帖子时付出的时间和努力?    做得很好-特别是一个(相对)对这个论坛来说是新的。

    但我发现一个缺点-您不能为您选择"USB Only"。    您会注意到、"必须处于高速状态"-但未定义"高速"。

    和-未提及的是(除 USB 之外的)方法的比较/对比度。    您的"数据传输方法"选择中是否不应包括所需的时间/精力/资源投资(USB 的复杂性要求)?    (供应商的 MCU UART (驱动进入商用(正确)、"UART <-> USB 转换器")是否不可能"提高速度、易用性和增强"您的"数据传输"开发?)

    至少、这将提供一个"基准标记"、您的"首选" USB 方法必须(实质上)超越该标记、以证明 USB 具有显著的额外 "时间/精力/不确定性!"

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    主席先生,
    在我的应用中、我需要尽快将传入的 CAN 消息(1Mbps)传输到 PC。 消息频率也很高。UART 比 USB 慢,USB 数据包的大小比 UART 和 SPI 大(中断和传输中最高可达64B,等时传输中最高可达64B)。这就是为什么我选择了 USB。您能回答我的问题吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Jithin k joy"]您能回答我的问题吗...

    可能-但不可能达到您的预期。

    UART (可能)比 USB 在(某些、许多)应用中的速度慢-但并不是全部!    和-此类 MCU 肯定会给您的传输带来(部分)速度负担。

    当您要求回答(几个)问题时、您没有理由这样说: "为什么 UART 方法被拒绝了-肯定要容易得多-并且实施得更快-为什么会被拒绝?"

    如前所述-仅限速度-尤其是此类(仅限未知/理论)潜力的重要性、"速度增益"-减去(任何)"实际速度测量/比较"仍然存在、"不确定和未知"-可能无法证明您需要花费时间和精力...

    有人怀疑存在"商业" CAN 板-这可能利用(功能更强大的) PC MPU 的(多种)优势-对我来说、这最能满足您的兴趣...    (通过避免此论坛类别的必然"阻塞效应"、MCU。)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    您的目标应用是什么? 如果您打算使用 USB 在 PC 和 MCU 之间直接传输数据、则无需使用虚拟 COM 端口。 虚拟 COM 端口是不带物理 UART 接口的 PC 的软件接口、用于访问 USB 设备、就像内置串行端口一样。 假设您还有一个只能通过 UART 接口访问的旧外设。 但您的最新 PC 没有 UART 接口、但您有一个旧程序、该程序是为了访问外设而编写的、您希望在新 PC 上运行。 此时您将使用虚拟 COM 端口。 如果我不清楚、我将向您推荐 Jan Axlson 编写的以下链接、他对虚拟 COM 端口进行了很好的介绍。 它可以比我更好地回答您的许多问题。

    janaxelson.com/usb_virtual_com_port.htm