我需要在两个处理器之间创建批量传输。USB_DEV_BULK 中的示例适用于 Windows;但是、我需要连接两个 tm4c129x 一个主机和其他器件。 它是否像使用 eUSBModeHost +几个其他更改配置 USBDBulkInit 一样简单? 如果有一个很好的示例。 我想、当我获得 mirco USB 转 micro USB 电缆时、我会提出这个问题。
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.
我需要在两个处理器之间创建批量传输。USB_DEV_BULK 中的示例适用于 Windows;但是、我需要连接两个 tm4c129x 一个主机和其他器件。 它是否像使用 eUSBModeHost +几个其他更改配置 USBDBulkInit 一样简单? 如果有一个很好的示例。 我想、当我获得 mirco USB 转 micro USB 电缆时、我会提出这个问题。
您好!
我认为这很有可能。 但是、我们没有针对主机的批量传输示例、而只是针对器件。 请告诉我们您是否可以让它正常工作、并与社区分享您的建议。 如果您需要进一步的帮助、我将需要将您的问题转交给我们的 USB 专家、但直到下周可能才会收到回复。
下面的帖子也可能有用。
感谢您提供信息。 问、如果可以、有很多不同的模型被定义。 我有一项特殊要求、可能需要两个 Tm4c129x 才能以高速率共享数据。 处理器位于同一电路板上并控制不同的器件(不是通过 USB、需要占用空间小)。 因此、DPM/RAM 是一种方法、但需要更多布板空间。 USB 提供12Mbs 的简单数据共享。 我在 USB 数据传输方面没有太多经验。 批量还是 CDC 是使用 DMA 共享数据的更好方法? 有什么想法或示例需要指出的起点?
抱歉、什么是 DPM?
[引用 userid="49816" URL"~/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1017323/tm4c129x-and-bulk-transfer-and-device/3759784 #3759784"]批量或 CDC 是否是使用 DMA 共享数据的更好方法?CDC 类还使用批量传输。 USB 端点可配置为4种不同类型的传输:控制、等时传输、中断传输和批量传输。 CDC 类使用批量传输。
DPM"双端口存储器".. CDC 我看到了这一点、但对它不够仔细。 是否有主机/器件示例? 因为我所做的只是数据的兆欧传输。 我在主机和设备端都使用了 msc。 我目前正在重新配置块的大小和数量、以便在两端(X len 的字节或固定传输大小的字节)将其缩小。 简单地说、使器件端看不到闪存芯片、而是指向处理器中的存储器位置。 到目前为止、从连接到断开的一切都看起来都很好。 但是、仍然需要研究块/扇区的硬定义在哪里、大小位于库文件中。
简单了解应用(仍在使用单个 tm4c129x 处理器方法、其中两个是备份计划):
我需要一个处理器以非常高的速率(SPI 9Mhz)收集数据并将其存储在本地。 完成后、将其传输到第二个处理器并恢复收集、第二个处理器 会收集其他数据(非高数据速率) 、然后将其置于网络上。 存储器共享或 DPM 是一种更好的方法、但电路板尺寸必须较小。 与 两个 TM4C129x 相比、高速处理器需要更多的外部空间+它们可以共享电源、clk 和 rst 逻辑……
您好、Robert、
我无法找到资源、因此让我后退一步、回到这里的根本问题。 通常、CDC 被视为突发数据传输的最快选项、 往往是通过 USB 进行高速数据传输的首选。 有些人尝试定义自定义协议、以便对较大的数据包大小使用等时传输、但我尚未看到在 TM4C 上执行的操作。 通常使用等时传输来定期发送大数据包、例如用于音频的数据包。
虽然它不会进入 USB 模式、但它概述了可用的不同传输类型: https://www.beyondlogic.org/usbnutshell/usb4.shtml
现在、我尝试找到吞吐量资源的原因之一是、它实际上根据12Mbs 接口计算出最大理论吞吐量、同时考虑协议开销。 我将要从这里的记忆中汲取数据、所以不要把它视为福音、但我记得实际有效数据速率最高为~8Mbs。
对于我们的 TM4C 微控制 器、在器件模式下、我们通常看到600-800kb/s (请注意、现在的字节不是位)、但我没有看到任何主机模式规格。 我不希望在该前端的任一方向上出现较大的增量。
[引用 userid="49816" URL"~/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1017323/tm4c129x-and-bulk-transfer-and-device/3760024 #3760024">问题:我知道 CDC 示例似乎指向一个 UART/串行示例。 其中波特率设置为115.2K。 我需要以12Mbits 的速度运行数据流(USB 1.1、 全速)[/quot]这就是我们的演示如何设置 TivaWare 以创建简单的示例程序的方法。 不需要这样做、 几乎每个应用都通过 USB 转 USB 来获得更高的速度。
[引用 userid="49816" URL"~/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1017323/tm4c129x-and-bulk-transfer-and-device/3761740 #3761740"]任何帮助都将非常有用,任何主机代码也将提供帮助[/quot]我有一个适用于 EK-TM4C1294XL LaunchPad 的 USB 主机 CDC 示例、但尚未完全完成。 我可以看到有关提供该功能的信息、但现在可以清楚地看到它"按原样"。 我们的计划是在今年晚些时候完成并发布、但我尚未重新开始该活动、并且在接下来的几周内无法重新开始。
很遗憾、我一直在努力抽出时间来测试这一点、这就是为什么我在这里的回复如此延迟的原因、但让我看看我明天可以做些什么来完成这项工作、以便我为您提供帮助、以便您开始尝试。 我需要查看我是否让 LaunchPad 到 LaunchPad 的传输也正常工作、或者它只是 LaunchPad 到 PC。
此致、
Ralph
您好、Robert、
[引用 userid="49816" URL"~/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1017323/tm4c129x-and-bulk-transfer-and-device/3766330 #3766330"]快速和 数据收集中断之间[/quot]如果您希望像这样驱动它、则可以使用 CDC。
我将提供的 USB CDC 主机示例将附带生成的新 usblib 文件以支持该文件。 今天下午、我花了一些时间来做这项工作。
此致、
Ralph
您好、Robert、
我附加的软件包将启用 TivaWare 2.2.0.295的 USB 主机演示:
e2e.ti.com/.../USB_5F00_Host_5F00_CDC_5F00_Example.zip
此文件包含三个文件夹:
将文件复制到 TivaWare 安装中后、您需要重新构建 usblib 以反映 USB 器件驱动程序的更新。
按照我们入门指南第4.2节中的步骤来重建 TivaWare usblib: https://www.ti.com/lit/pdf/spmu373
完成后、您可以将以下项目上传到 LaunchPad:
完成所有这些操作后、您只需将两个 LaunchPad 的目标 USB 端口连接在一起即可运行示例。
在每个 LaunchPad 上将 USB 电缆连接到 PC 的情况下、为每个 LaunchPad 打开一个 UART 终端。 对于主机 LaunchPad、您应该会收到一条关于它是 HCDC 串行应用的消息。 正确连接并枚举器件 LaunchPad 后、器件会显示"CDC 器件已连接"。
此时、您可以开始测试传输。 从设备端到主机端、您有两个选项:
主机示例不包含任何 UART 终端输入功能、因此当前仅通过'Z'数据包驱动来自主机的传输。 但是、这应该足以让您为应用程序使用和运行。
此致、
Ralph