Other Parts Discussed in Thread: SYSCONFIG
器件型号: AM243X - MOTOR-CONTROL-SDK
主题: SysConfig 中讨论的其他器件
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.
Other Parts Discussed in Thread: SYSCONFIG
器件型号: AM243X - MOTOR-CONTROL-SDK
主题: SysConfig 中讨论的其他器件
尊敬的 Vaibhav:
感谢您的答复。
我相信我的质询有误解、所以让我澄清一下。
我不使用标准 UART 外设。
相反、我使用在 PRU-ICSS 上运行的 AM243x 电机控制 SDK(tamagawa_diagnostic_single_channel 示例)中提供的 Tamagawa 协议实现。
此实现基于类似 UART 的协议(类似于 Tamagawa 编码器)、但它不使用标准 UART 硬件。
通信由 PRU 固件(以及可能的 ICSS 外设资源、例如基于 SPI/基于移位的机制)进行处理、我知道这些外设由 SDK 在内部管理。
在本例中、我使用的器件使用的是类似 Tamagawa 的协议、但具有 10Mbps 的更高比特率。
为了支持这一点、我按如下方式修改了 SDK Tamagawa 模块:
-将 Tamagawa RX_OVERSAMPLING_RATE 从 7 (8x) 更改为 3 (4x)
-调整了 RECEIVE_FRAME_S 宏中的 bit_idx 参数
完成这些修改后、我收到的数据出现了一致的 1 位移位。
我的问题不是关于 UART 硬件限制、而是关于:
- Tamagawa PRU 实施是否支持更低的过采样率,例如 4 倍
-修改过采样率时需要进行哪些额外的时序或配置调整
由于此 Tamagawa 实现是 TI 在 SDK 中提供的、我假设您可能会更深入地了解 PRU 固件和时序在内部设计的方式。
感谢您提供有关如何正确调整此实施以实现 10Mbps 运行的指导。
此致、
Maeda
尊敬的 Vaibhav:
非常感谢您的支持和指导。
我想分享有关此问题的最新信息。
经过进一步调查、我发现根本原因与过采样配置本身无关。
在评估期间、我重命名了工程、因此未正确重建和更新 PRU 固件。
在重新导入原始示例工程并重新应用我的修改后、
我能够确认现在可以正确接收数据、而不会出现 1 位移位问题。
我对由此引起的任何混淆深表歉意、感谢您抽出宝贵的时间来帮助调查此事。
此致、
Maeda
尊敬的 Maeda:
谢谢、
只需进行极少的更改、您也可以采用另一种方式:启用分数分频器、允许 RX 时钟使用 0.5 分频器(分频器= 200 / 8 * 10 = 2.5)。 您只需要在 tamagawa_config_clock 中启用小数位 tamagawa_driver.c。 如图所示添加一行。
BR、
Achala Ram