主题中讨论的其他器件:SN65HVD73、 SN65HVD76、 SN65HVD70、 C2000WARE
你(们)好
我正在考虑使用 TMS320F28004x 系列来开发具有2个绝对编码器的双轴驱动系统。 据我所知、使用绝对编码器功能需要 SPI 外设(与 CLB 一起)。 是否仍然可以将2个绝对编码器与1个 SPI 同时使用以进行正常通信?
感谢你的帮助
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.
你(们)好
我正在考虑使用 TMS320F28004x 系列来开发具有2个绝对编码器的双轴驱动系统。 据我所知、使用绝对编码器功能需要 SPI 外设(与 CLB 一起)。 是否仍然可以将2个绝对编码器与1个 SPI 同时使用以进行正常通信?
感谢你的帮助
很抱歉、我看不到您的答案和我的问题之间的链接。 我会使用 RS422收发器将差分信号转换为"正常"信号。 您可以在 BiSS-C 绝对编码器主接口参考设计原理图中看到的是我的计划--> http://www.ti.com/lit/df/tidrst7/tidrst7.pdf
由于 TMS320F280049 uC 上只有2个 SPI 可用、并且它们似乎用于绝对编码器功能、因此我的问题是、您是否仍然可以使用一个 SPI 进行正常通信。 我认为这是不可能的、但也许我已经监督了一些事情。
您好!
我们的当前库仅支持一个绝对编码器、如 BiSS-C 或 ENDat22。
目前还没有计划支持多个编码器。 我们的绝对编码器实现基于 CLB (可配置逻辑块)。
我们将在本月末在即将推出的 C2000Ware 版本中发布用于配置 CLB 的工具。
除 SPI 外、CLB 资源也是一个限制因素。
如果您使用的是 QEP 或 SINCOS 等其他编码器、则可以创建自己的实现方案。
感谢您的回答。 为什么该库仅支持一个编码器? 硬件是否会限制它、或者在实施具有多个编码器的库时是否需要大量工作。 在以下文档中、CLB 应支持两个编码器:
http://www.ti.com/lit/wp/sway022/sway022.pdf
"在位置管理器解决方案中、将 CLB 与串行端口相结合可创建适用于 EnDat2.2、双向/串行/同步(BiSS)、Tamagawa T-format 和其他串行编码器标准的解决方案。 F28004x 上的 CLB 有足够的能力来实现大多数协议的两个通道。"
您好!
正如我之前所说的-库仅供单个编码器使用。
从硬件角度而言-这取决于所使用的编码器以及用于编码器实现的 CLB 资源。
例如、不可能实现2个 EnDat22编码器、但可以实现2个 Tformat 编码器、或1个 BiSS_C + 1个 T-format 等
此外、虽然理论上可能存在多个编码器、但由于当前的使用仅通过库启用-您只能支持一个编码器。
本月晚些时候发布 CLB 工具时、您可以使用 CLB 设计自己的编码器接口、并验证多编码器的可行性。
我主要处理的是采用简单单向 SPI 接口的解码器。 为此、以下原理图应显示该方法:
对于我处理过的两个 BiSS 和 EnDat 编码器、我直接使用 SPI 模块而不使用 CLB (这是10年前的情况)。 事实证明、CLB 最重要的特性是时钟延迟补偿。 如果您的 MCU 具有 McBSP 端口、则可以使用它并通过外部 RC 电路生成延迟时钟。 您甚至可以通过使用电缆并联电容器的 GPIO 来设定延迟。 现在、如果您降低时钟频率、则无需时钟延迟补偿即可实现。 在某些情况下、您甚至可以推送时钟频率、并且可以更改 SPI 中的时钟极性和时钟相位设置、以便在正确的时刻对数据进行采样。 但这更多的是适合原型设计的解决方案、我不建议将其用于生产。
现在、如果您可以在没有时钟延迟补偿的情况下生活、您可以仅将不带 CLB 的 SPI 用于 BiSS 或 EnDat 通信、如果您想要具有读/写访问权限、则需要使用额外的 MOSI 信号收发器来扩展所示的原理图。 但是、我一直设法仅与 BiSS 和 EnDat 进行单向通信。 也许我刚刚有幸接触到编码器、因为它们开箱即可正确配置、并且不需要任何写入访问即可工作。