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.

[参考译文] AM263P4:旋转变压器

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1515549/am263p4-resolver

器件型号:AM263P4
Thread 中讨论的其他器件:UNIFLASHSYSCONFIG

工具/软件:

嘿、专家、
我有一些关于旋转变压器模块的问题。

作为 SW、我要使用:
CCS 12.8.1.00005
SDK 10_00_00_35
Uniflash 8.1.4983

作为硬件甚至定制电路板。

这是我对旋转变压器的配置:

以下是我的硬件连接:



旋转变压器仅连接到 RESOLVER1。

1) 作为 激励 PWM 输出的两个引脚。 关于此帖子:https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1345059/am263p4-does-the-resolver-support-output-differential-pwm
并在 2 个引脚上提供相同的输出。 我的问题是、我可以在 PWM0 处看到激励 PWM、但在 PWM1 处只有 0V(经过检查,此行没有短接 zo GND)。 想什么、为什么我看不到励磁 PWM?

2) 不过、如果我检查解析器 2 寄存器、我会看到以下值:

如果转动仅连接到旋转变压器 1 的旋转变压器、会发生这种变化。  
如果我 在 RESOLVER2 SIN 或 RESOLVER2 COS 处使用示波器测量 PCB 处的电压、即其平坦的 1.65V(输入放大器的基准电压)。
我期望角度和速度的值稳定。  
您是否知道这些值为什么会发生变化?
我可以在任何寄存器中检查测得的原始 ADC 值吗? 我只找到了上面公布的计算出的 arctan 和 track2 值。

此致、

Marcel

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

    嗨、
    同时、我更深入地研究了我的问题、并发现了一些关于第 2 点的事情:
    我找到了一些包含 ADC 值的寄存器:

    正如我在其说明中看到的、这种寄存器是否有更多信息?
    ADC 为 12 位、这些寄存器为 16 位。 如何在输入引脚处包回原始电压值?

    此外、我尝试检查我的固定是否正确。

    我在 TRM 中找不到任何有关单端引脚的信息。 但我发现在 SDK 示例中:

    如果我要使用 RCD Sequencer 模式 3、您能否确认这是正确的固定吗?
    如果是、是否有办法在软件中解决此硬件问题?

    此致、

    Marcel

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

    您好:Marcel、

    请查看我在下面的答复、

    下面是我的硬件连接:
    [/报价]

    假设您使用的是单端信号、这些连接与   AM263Px Sitara 微控制器技术参考手册(修订版 C)第 7.5.3.2.2.1.1 序列发生器和 RDC 工作模式中给出的任何配置都不匹配。 您必须修改这些连接。  有关所有 6 种配置、请参阅图 7-165 至图 7-170。

    因此、使用当前的硬件配置/连接、您将能够使用模式 0(根据  TRM 的第 7.5.3.2.2.1.1.1 节规定)、在这种情况下、只有外部旋转变压器 1 正确连接到 ADC_RO_AIN0 和 ADC_R1_AIN0 引脚。

    但在 PWM1 处只有 0V(选中硬件,此行没有短 zo GND)

    在 RES0_PWMOUT1(在 D18 引脚上)上、您能否检查是否在寄存器 PR0_PRU1_GPIO8_CFG_REG(地址为 0x531001A8)中正确设置了多路复用模式? 应将多路复用模式设置为模式 8 以选择  RES0_PWMOUT1 多路复用模式。

    如果我打开仅连接到解析器 1
    的解析器、会发生什么变化

    这可能是由于前面提到的错误连接造成的。

    如果我 在 RESOLVER2 SIN 或 RESOLVER2 COS 处使用示波器测量 PCB 上的电压、即其平坦的 1.65V(输入放大器的基准电压)[/报价]

    这可能是因为没有激励信号。 如果没有激励信号、通常外部放大器会稳定在基准电压。

    您是否知道值为何会发生变化?

    由于您在第二个答案中提到您正在使用“序列发生器“模式 3、因此上述连接可能会导致两个 RDC 值发生变化。 因此请按照前面所述更正连接。

    我是否可以在任何寄存器中检查测得的原始 ADC 值? 我只找到了上面发布的计算的 arctan 和 track2 值。

    可以使用 ADC_R 的 ADC 结果寄存器来读取这些寄存器 PELAS 指的是适用于 ADC_R 的 0x502C6000 和适用于 ADC_R1 的 0x502C8000 中的 ADC_R_RESULTS 寄存器。

    正如我在其说明中看到的、此寄存器是否有更多信息?

    请参阅   从地址 0x502CB0EC 和 0x502CB2BC 开始的 AM263Px Sitara 微控制器寄存器附录(修订版 A)的第 3.12.1 节旋转变压器摘要。

    如果我要使用 RCD 序列发生器模式 3、您能否确认这是正确的固定?
    [/报价]

    是的、表中提到的锁定是正确的、并且与 图 7-168 中的锁定相匹配。 AM263Px Sitara 微控制器技术参考手册的模式–3(修订版 C)。  图 7-168 显示了差分连接、单端连接可以参考相同的(仅限正信号)

    如果是、我是否可以在软件中解决此硬件问题?
    [/报价]

    我认为使用旋转变压器数字转换器功能时、无法在软件中解决此问题。

    谢谢、

    Tejas Kulakarni

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

    嘿 Tejas、
    感谢您的答复。 有几个问题:

    在 RES0_PWMOUT1(在 D18 引脚上)上、您能否在寄存器 PR0_PRU1_GPIO8_CFG_REG(地址为 0x531001A8)中检查是否正确设置了多路复用模式? 应将多路复用模式设置为模式 8 以选择  RES0_PWMOUT1 多路复用模式。

    看起来是模式 8、但没有输出。 已尝试将其切换到 PR0_PRU1_GPIO14 ...此处的结果相同。 也只使用 PR0_PRU1_GPIO8 作为 GPIO 来检查是否有任何硬件故障、但我可以按预期进行切换。  

    可使用 ADC_R 的 ADC 结果寄存器来读取这些内容 PELAS 指的是适用于 ADC_R 的 0x502C6000 和适用于 ADC_R1 的 0x502C8000 中的 ADC_R_RESULTS 寄存器。

    这些寄存器只是显示零:

    当旋转变压器寄存器显示值时:



    此致

    Marcel

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

    您好:Marcel、

    您能否只尝试配置旋转变压器 ADC、然后尝试读取这些值、只是为了确保信号实际上到达 ADC?

    此外、如果可能、您是否可以在电路板上进行探测、并实际检查是否有一些信号到达这些旋转变压器 ADC?

    您是否能够按照前面回答中的建议更改硬件配置? 请告诉我、否则旋转变压器将无法解析任何角度。

    谢谢、

    Tejas Kulakarni

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

    嘿 Tejas、

    [引述 userid=“534589" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1515549/am263p4-resolver/5840264 #5840264“]

    您能否只尝试配置旋转变压器 ADC、然后尝试读取这些值、只是为了确保信号实际上到达 ADC?

    此外、如果可能、您是否可以在电路板上进行探测、并实际检查是否有一些信号到达这些旋转变压器 ADC?

    [/报价]

    旋转变压器 1 已连接、从旋转变压器接口(角度和速度)发出的结果看起来很好。 信号会到达旋转变压器接口。

    您是否能够按照前面回答中的建议更改硬件配置? 请告诉我、否则解析程序将无法解析任何角度。

    遗憾的是、我当前的硬件版本无法实现这一点。


    [引述 userid=“630102" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1515549/am263p4-resolver/5833620 #5833620“]
    在 RES0_PWMOUT1(在 D18 引脚上)上、您能否检查是否在寄存器 PR0_PRU1_GPIO8_CFG_REG(地址为 0x531001A8)中正确设置了多路复用模式? 应将多路复用模式设置为模式 8 以选择  RES0_PWMOUT1 多路复用模式。

    看起来是模式 8、但没有输出。 已尝试将其切换到 PR0_PRU1_GPIO14 ...此处的结果相同。 也只使用 PR0_PRU1_GPIO8 作为 GPIO 来检查是否有任何硬件故障、但我可以按预期进行切换。  

    [/报价]

    有什么想法为什么我在 RES0_PWMOUT1 没有输出? 此外、我必须在不同的 PCB 上对其进行测试、以确保我的 Θ µC 不会损坏。 但每个 PCB 的结果都是相同的。

    此致、

    Marcel

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

    您好:Marcel、

    对延迟的答复表示歉意。 我只是检查您分享的寄存器值。 我看到 PR0_PRU1_GPIO8 寄存器配置为值 0x000005F7、但要在仅多路复用模式设置为  RES0_PWMOUT1 的默认条件下使用该寄存器、我们必须将其设置为 0x000005F 8. 。 您能否尝试一次、看看是否 看到 RES0_PWMOUT1?

    谢谢、

    Tejas Kulakarni

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

    嘿 Tejas、
    很抱歉,我没有得到你的指示。

    [报价 userid=“534589" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1515549/am263p4-resolver/5873604 #5873604“]我看到 PR0_PRU1_GPIO8 寄存器配置为值 0x000005F7  

    它实际上配置为值 0x00000508
    其值与 运行正常的 RES0_PWMOUT0 相同。  

    此致、

    Marcel

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

    您好:Marcel、

    抱歉、我的意思是您必须将寄存器设置为多路复用模式、因此将 PR0_PRU1_GPO8_CFG_REG 寄存器设置为  0x000005F 8. 使其处于多路复用模式 8. 即 RES0_PWMOUT1。 您能否交叉验证? 写入 0x000005F7 将使其进入多路复用器模式 7.

    谢谢、

    Tejas Kulakarni

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

    嘿 Tejas、

    [报价 userid=“534589" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1515549/am263p4-resolver/5873604 #5873604“]我看到 PR0_PRU1_GPIO8 寄存器配置为值 0x000005F7  

    您在哪里看到?
    我分享的唯一屏幕截图具有寄存器值  0x00000508。  
    它已经处于多路复用模式 8。

    此致、

    Marcel

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

    您好:Marcel、

    是的、您共享的屏幕截图 具有值  0x00000508、但我想这样做 再次交叉检查 当代码运行时(从“Memory Browser“中选中“Auto-refresh On“)。 只需确保、没有其他代码会将其设置回任何其他多路复用模式。 此外、如果已验证、您能否尝试写入 0x000005 F 8 一次、看看这是否解决了问题?

    此外、是否可以 完全隔离引脚 PR0_PRU1_GPIO8 (D18) 并将其探测一次? 可能是如果您有一个串联电阻器、请拆除它、使引脚与电路的其余部分隔离、然后尝试在 MCU 侧探测它?

    谢谢、

    Tejas Kulakarni

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

    嘿 Tejas、

    完全隔离。 当我的代码运行时、pin 的值保持不变。 我尝试过将其写入 0x5F8、但这没有任何变化。

    此致、

    Marcel

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

    您好:Marcel、

    我不知道还有什么会导致这个问题。 能否对 RES0_PWMOUT0 和 RES0_PWMOUT1 的配置进行代码比较 

    同时、我将请我的同事进行一次检查、看看我们是否缺少 SDK 或 SysConfig 部分中的任何内容。

    谢谢、

    Tejas Kulakarni