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.

[参考译文] TMDSRM48HDK:N2HET 事件捕捉时间戳(上升沿或下降沿)

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/832576/tmdsrm48hdk-n2het-capture-timestamp-of-event-rising-or-falling-edge

器件型号:TMDSRM48HDK
主题中讨论的其他器件:HALCOGEN

大家好、我正在尝试捕获输入信号的下降沿、并使用 N2HET 计时器模块记录接收到下降沿的时间。 使用 capGetSignal(),我只能获得占空比和周期。 在接收到边沿时是否有任何方法来获取时间戳? 我不希望有中断处理程序来捕获时间戳。

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

    您好、Smruthi、

    HALCoGen 生成的 HET 程序包含两个函数 hetResetTimestamp 和 hetGetTimestamp。 这些引脚仅适用于引脚0、不可使用 HALCoGen GUI 进行配置。 使用一个带有"始终"条件被选中的 WCAP 指令来捕捉时间戳。 您可以在应用程序中修改此指令、以选择您想要设置时间戳的相应引脚编号和引脚条件。 WCAP 指令是 HET 程序中由 HALCoGen 生成的第57条指令(程序中的最后一条指令)。

    我建议使用 HET IDE 开发 HET 代码: http://www.ti.com/tool/HET_IDE

    这将使您能够以最佳方式更好地实施所需的 HET 程序。

    此致、Sunil

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

    您好、Sunil、

    感谢您的建议。 我的问题是如何在 CCS 中运行 HET IDE 生成的代码? 我在 HET IDE 中编写了一个代码并将其导入到 Halcogen 中。 我只是想知道如何在 CCS 中执行它?

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

    您好、Smruthi、

    HET IDE 为您的 HET 程序生成一个.c 和一个.h 文件。 您可以将这些文件添加到您的 CCS 项目中。 在线提供了一些应用手册、其中包括使用 HET IDE 创建的 HET 程序、其中包括用于演示突出显示功能的完整 CCS 项目。

    例如、请参阅此应用手册 :http://www.ti.com/lit/an/spna217/spna217.pdf

    pdf 中包含 CCS 项目的.zip 文件的链接。

    此致、Sunil

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

    您好、Sunil、

    还有一个问题、在使用针对 N2HET 计时器的 HET IDE 代码时、是否可以使用由 Halcogen 启用的中断? 这是因为我希望在每个周期结束时生成 PWM 中断、同时捕获另一个信号并获取该信号下降沿的时间戳、并比较这两个信号的时间戳。 或者如何在 HET IDE 中生成 PWM 占空比结束中断?  

    此致、

    Smruthi

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

    您好、Smruthi、

    您当然可以使用 HALCoGen 配置和使用中断。 我对使用案例的理解有困难、希望得到更多的澄清。

    当相关条件匹配时、多个 HET 指令可以生成中断、例如、当所选寄存器的内容与其数据字段匹配时、ECMP (等性比较)指令可以生成中断。 根据您选择的 PWM 生成方式、您可以灵活地定义何时生成中断。

    此致、Sunil

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

    您好、Sunil、

    因此、我要尝试在周期结束时触发 PWM 中断、并在 PWM 占空比结束时以及捕获输入信号时测量计数器。 我有一个 HET IDE 程序、用于捕获信号的计数器值。 当我在加载 HET IDE 代码后在 Halcogen 中启用中断时、我无法生成我在 Halcogen 中为 N2HET 定时器模块选择的中断。 那么、我想问一下、即使在为 N2HET 计时器启用了 Halcogen 中的 HET IDE 源代码之后、是否有办法使 Halcogen 生成的中断正常工作? 或者如何 在 HET IDE 中生成 PWM 周期结束中断?

    Smruthi Ramesh

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

    您好、Smruthi、

    HALCoGen 允许您启用/映射来自 N2HET 的两个独立中断、一个被视为更高级别的中断、另一个被视为更低级别的中断。 默认情况下、较高级别的中断映射到编号较低的中断通道。

    这些中断的源是 HET 程序指令、并且可由中断处理例程根据从 HETOFFx 寄存器中读取的中断索引偏移值进行解码。 请参阅第821页的 RM48x 参考手册中的第20.2.7节。

    此致、Sunil

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

    您好、Sunil、

    我能够在 Halcogen 上生成中断。 但是、如果我在 N2HET 中启用高级配置模式(禁用黑盒驱动程序)、那么我无法生成我通过 Halcogen GUI 启用的 PWM 中断。 您认为我做的事情不正确吗?

    此致、

    Smruthi

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

    实际上、我弄清楚了我的错误是什么。 谢谢

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

    您好、Sunil、

    还有一个问题。 如何将 WCAP 捕获的计数器值转换为时间(以秒为单位)。  

    计数器是否存储循环计数? 如果是、那么1个循环计数在时间方面对应什么?

    此致、

    Smruthi Ramesh

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

    您好、Smruthi、

    WCAP 指令有一个32位数据字段、其中25位反映环路分辨率(LR)计数、而低7位反映高分辨率(HR)计数。 高分辨率时钟计数器是可选的、并且取决于该特性是否在 WCAP 指令内被启用。

    HR 计数基于高分辨率时钟周期、该时钟周期由 VCLK2周期分频。 环路计数基于环路分辨率时钟周期、该时钟周期由高分辨率时钟分频。

    HR 和 LR 周期都由 HET 预分频因子寄存器(HETPFR)的配置定义。 请参阅 TRM 的 HET 章节中的"时基"一节。

    此致、

    Sunil