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.

[参考译文] TMS570LS3137:NHET &放大器;CAP

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/929046/tms570ls3137-nhet-cap

主题中讨论的其他器件:TMS570LS3137HALCOGEN

零件编号:TMS570LS3137

尊敬的团队:

我的客户正在使用 TMS570LS3137。 我没有此设备、请帮助我测试他的配置。

客户希望通过 TMS570LS3137的 NHET 实现脉冲捕获功能。 他使用 HALCoGen 配置引脚交叉开关、边缘和 CAP 功能、如下所示:

1:信号源使用 PWM 模块、2引脚输出生成、并通过外部环路返回到0引脚;

引脚0配置为 NHET 引脚和输入引脚、引脚2配置为 NHET 引脚和输入引脚;

测试结果:
PWM 模块生成的信号正常。 信号驱动一个指示器、灯的闪烁频率正确、但捕获模块使用 edgeGetCounter 和/或 capGetSignal 函数来捕获脉冲、脉冲数、周期和占空比都为0。

请帮助。

e2e.ti.com/.../7002.HAL-config.docx

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

    您好 Susan、

    请让您的客户首先使用默认的 N2HET1设置、以检查他们是否可以获得正确的边沿计数器、占空比和周期。

    默认 PWM 引脚为:N2HET1_8/10/12/14/16/17/18/10

    默认的边沿引脚为:9、11、13、15、20、 21、22、23

    默认电容引脚:0、2、4、6、24、 26、28、30       --> HR Shared 是必需的。 请勿使用引脚1、3、5、7、27、 29、31用于 PWM、Edge 等

    您的客户使用:

    PWM 引脚:13、2、14、15、16             --这里的引脚2是输出

    2、边沿引脚:0、11、13、15、20、 21、22

    电容引脚:5、24、6、7、 24              引脚2在这里配置为输入。 不需要人力资源共享要求

    CAP 的 TH 引脚应为偶数2n (0、2、4、6)、引脚2n+1 (1、3、5、7...)的 HR 结构 也用于 CAP、因此2n+1引脚不应用于其他 N2HET 功能(PWM、边缘等)。  

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

    感谢您的回复!

    但仍然不幸运。  客户一直在使用 N2HET2模块。 根据默认配置、仍然捕获的占空比和周期都为0。

    请参阅以下文档以获取配置。

    e2e.ti.com/.../8508.HAL-config_08FF_new_09FF_.docx。

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

    您好 Susan、

    1。对于 CAP 通道0/4、1/5、2/6、3/7、使用相同的引脚:0、2、4、6。 请为电容通道4、5、6、7使用不同的 NHET 引脚。

    大多数 NHET2引脚与其他模块(MibSPI、GIO 等)复用、请通过 PINMUX 为 NHET 配置这些引脚

    3.从您所连接的文档中,PWM 通道未启用,因此没有到 CAP 输入引脚的输入信号。

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

    谢谢!

    N2HET 器件根据 HAL 默认配置进行配置、引脚分配在默认情况下全部使用。 还配置了 PINMUX。

    未配置 PWM 但使用默认配置的原因是它们希望避免 PWM 模块和 CAP 模块的干扰。

    外部信号源用于直接注入 CAP0的相应引脚。  仍然无法正常工作、请将其改回正常 IO 功能、读取 IO 电平正常。

    我们是否有任何示例代码?

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

    您好 Susan、

    我记得它们会将 PWM 输出环路到电容输入。 如果使用外部信号源、则无需启用 PWM (引脚8、10、...)。

    我没有示例代码、但我进行了多次此类测试、从未看到过此类问题。

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

    您好 Susan、

    还有两个要检查的事项:

    1.是否启用 HET2

    2. VIM 通道63和73被启用或不被启用(针对 HET2中断)。 如果它们在 中断模式中从 NHET 指令中读取数据、中断应该被启用。

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

    您好 QJ、

    感谢您的回复。

    1. HET2被启用。HALCoGen 项目  可在附件中看到。

    我们在主循环中从 NHET 指令读取数据,每100ms,使用这些程序。

    capGetSignal (hetRAM2、cap0、testCapSigCh0);

    printf ("\r\nsig ch0=%d、%f"、(testCapSigCh0.Duty)、(testCapSigCh0.period));

    结果为,sig ch0=0.000000

    3、几天前、我们使用循环 PWM 作为测试方法进行捕获、但失败了。

     现在、我们使用了外部 信号、该信号可以由同一引脚(HET2引脚0)捕获、但在 GPIO 模式下工作。

     尽管信号 可以证明是正确的、但我们得到了相同的失败结果、sig ch0=0、0.000000。

    请提供帮助、谢谢。

    e2e.ti.com/.../1447.HALCoGen.zip

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

    您好 QJ、

    David David2 是我之前提到的客户。 请帮助。

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

    您好!

    请将 LRPFC (hetREG2->PFR[10:8])更改为0x06或0x7。

    在您的代码中 、LRPFC = 4、这意味着有16个批次。但这里有57条指令用于 PWM/CAP/Edge 等。通过 N2HET 程序的最长路径必须在环路分辨率时钟(LRP)内完成。  

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

    您好 Qj,

    ,  ,、我们更改了 HALCoGen 生成的代码、很 高兴  得到了正确的占空比值。
    遗憾的是,期间值仍然 不正确(错误的数字,不是零)。

    你有其他建议吗?

    谢谢。

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

    测得的周期与正确的周期之间有何差异?  

    如果频率为1kHz、则周期应为1ms、测得的周期是多少?  

     “不正确(错误的数字,不是零)”是什么意思?

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

    您好、QJ

    我尝试了遵循 URL 的方式、但仍然出现问题(错误的期间值)。

    谢谢。

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

    您好!

    您说您获得了正确的占空比。 您是否进行了任何 NHET 代码修改、以便按照 e2echina.ti.com 上文章中所述获得正确的占空比?

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

    在 HALCoGen 生成的代码中、"FALL2RISE"的计数器类型用于占空比测量、而"FALL2FALL"用于周期测量。 如 e2echina 的帖子中所述、您也可以使用"RISE2FALL "和"RISE2RISE"计数器类型来测量占空比和周期。

    默认情况下、会清除 hr-lr、这意味着高分辨率模式将用于引脚0 (0、2、4、6、...)上的这个 PCNT 指令。 所有五个 HR 指令(PCNT、WCAP、ECMP、MCMP 和 PWCNT)都有一个专用的 hr_lr 位(高分辨率/低分辨率;程序字段位8)、通过忽略 HR 字段可在 HR 模式或标准分辨率模式下运行。 N2HET 程序有一个架构限制:每个高分辨率引脚只允许一条指令(使用高分辨率)。 这意味着、如果引脚0上的占空比使用高分辨率、引脚0上的周期不能使用高分辨率。 感谢 HR Share 功能、它允许两个 HR 结构共享同一个引脚以进行输入捕捉。

    在 HALCOGen 生成的 NHET 代码中、指令#25用于引脚0上的引脚0 HR 结构的占空比、指令#26用于周期、使用引脚1 HR 结构来捕获引脚0上的信号。 在 HALCOGen N2HET1-->引脚0~7配置页面上、为引脚0和引脚1启用 HR 共享: