Other Parts Discussed in Thread: SYSCONFIG
器件型号: AM2432
主题: SysConfig 中讨论的其他器件
您好、
如果我只想使用一台电机、是否必须重新配置 TDP 示例?
如果是、您能告诉我如何操作吗?
你好
Alexander
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
器件型号: AM2432
主题: SysConfig 中讨论的其他器件
您好、
如果我只想使用一台电机、是否必须重新配置 TDP 示例?
如果是、您能告诉我如何操作吗?
你好
Alexander
您好 Anil、
非常感谢您的快速响应。
我删除了以下编译器定义:
- MOTOR2_ABS_ENC
- MOTOR2_ENC
- MOTOR2_INLINE_SDFM
- MOTOR2_RPM_CMD
下面是一个屏幕截图:

在 SysConfig 中、我在 SDFM 通道 1 和 2 下已禁用。
在 Endat I 处还禁用通道 1 和 2。


出现了一个问题:多通道负载共享是什么意思?
很遗憾、我无法再编译:

我做了什么?
问候亚历山大
尊敬的 Alexander:
您必须为其启用负载共享模式、因为当前应用将 RTU 内核用于 SD ch0-ch2、将 ENDAT 通道 0 用于 motor1、 将 PRU 内核用于 SD ch3-ch5、将 TX PRU 内核用于 motor2 的 ENDAT 通道 2。 此外、为 motor1 启用所有 SD 通道 CH0-CH2。
应用中使用的 ENDAT 和 SDFM 配置文档。AM243x 电机控制 SDK:TIDEP-01032 EtherCAT 连接单芯片双伺服电机驱动参考设计
关于该错误、有一些属于 motor2 设置的代码未正确包含在定义的#if 中、我们在预定义符号中定义了这些代码。 您可以注释掉此代码或将其包含在#if Defined (MOTOR2) 这样的新定义中、以跳过构建该代码。
BR、
Achala Ram
好的、现在我可以编译并下载工程。
谢谢。
但不幸的是, Endat 不再工作的期望!
我有一个 oszilloskop 连接到 ndat CLK 和数据线、我不再看到时钟。
在代码中我陷入 endat_command_wait ()

工程:endatdiagnistic_single_canel、我可以很好地运行它、然后得到位置值、还可以在示波器上看到 CLK 和数据。
我希望我们运行示例。
BR
Alex
可以共享 SysConfig 文件吗? 也可以将更改与此项目进行比较。 我更新了 motor1 的 SysConfig 设置、并在 #if defined(MOTOR2) hal.c、 sys_main.c和 motor1_driver.c 文件中的条件内添加了代码以构建项目。
该工程适用于连接到 AM243x LP 上的 BP Axis1 的电机和编码器。
BR、
Achala Ram
因此、syscofig 文件是不显眼的。
但 SysConfig 工具的版本除外
你:v1.22
我的:V1.25

这是我的 SysConfig 文件:
e2e.ti.com/.../AM243_5F00_BP_2D00_AM2BLDCSERVO.syscfg.txt
在源代码级别、我们将#if def MOTOR2 放在相同的位置:)
Achala、我能不能在文件级别为您换用我的 R5F0-0 项目目录、只需复制它?

BR
Alexander
尊敬的 Alexander:
Achala、我是否可以在文件级别将我的 R5F0-0 项目目录交换为您的项目目录、所以只需复制它?
可以、您可以复制所有文件或只复制修改后的文件。 两个选项都可以。
中在代码中、我被困在 endat_command_wait ()
您在日志中看到了什么? 您是否看到以下消息: Check whether encoder is connected properly?
/* check initialization ack from firmware, with a timeout of 5 second */
status = endat_wait_initialization(priv, ENDAT_WAIT_5_SECOND, gEndat_multi_ch_mask);
if(status < 0)
{
DebugP_log("\r\t Check whether encoder is connected properly \n");
gEndatInitStatus = SystemP_FAILURE;
return;
}
else
{
gEndatInitStatus = 1;
}
我有一个 oszilloskop 连接到 ndat CLK 和数据线、我不再看到时钟。
这不应该发生。 如果更改与我共享的文件匹配、至少应该能够在 clk 引脚上看到编码器的时钟。
BR、
Achala Ram
嗨、Achala
没有、我没有看到此消息!
我认为这有两个原因:
1.变量 status 被声明为无符号,但检查是否小于 0。
2.我不确定使用 DebugP-Log() 时来自 R5FSS0-0 CPU 的消息输出的位置。

如果我更改变量状态的类型、则会出错!
您能否告诉我 R5FSS0-0 CPU 输出消息的位置?
是带有接头 HDR_1x6 的 UART 1 吗?

BR、
Alexander
尊敬的 Achala:
同时、我已将一个端子连接到 J13 (HDR_1x6)、现在我可以看到 R5FSS0-0 输出的 debugP_log ()。
有两种情况:
我收到了以下消息:
1、通道 0 初始化完成
但无周期性 Endat 传输。 系统尝试在 HAL_SetupEncoder () 中设置定期触发器,然后卡在 endat_command_wait () 中。

或
2.未连接编码器

这些状态相互交替。 每次启动时、它们都会切换。
我现在的问题是:我是否必须为 Endat 2.2 设置/配置某些内容?
BR
Alexander