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.

[参考译文] TM4C123GH6PM:了解输入边沿计时模式:在计数器/定时器溢出时检测缺失的边沿

Guru**** 2473260 points
Other Parts Discussed in Thread: TM4C123GH6PM

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/682038/tm4c123gh6pm-understanding-input-edge-time-mode-detect-missing-edges-when-counter-timer-overflows

器件型号:TM4C123GH6PM

您好!

我正在努力了解边沿计时模式计时器在 TM4C123GH6PM 上的工作原理、尤其是对数据表中显示的以下注释的阐述。 想法是捕获一个恰好落在 216或 224 (预分频器被启用)计数值之外的边沿。 我知道32位/64位定时器可被用于生成 248、 一个预分频器 可被用于对更高的时间事件进行计数、然而、正如注释中所建议的那样、我想要使用一个周期定时器进行试验。

  1. 第一个要点指出"周期 定时器周期与边沿定时定时器的速率相同"
    • 根据我的理解、这意味着使用相同的时钟源。
  2. 对于第二 个要点、我不明白为什么我们需要周期 计时器需要更高的优先级
  3. 我不知道应该减去哪个计数器、Peroidic 计时器或边沿计时器?

 总的来说、我很难理解周期定时器如何帮助捕捉缺失的边沿。

谢谢、

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

    首先请允许我指出,你的职务是非常有条理的,组织得很好。   对于这里的一个如此新的人-您的证明、 "不在图表上"很好!

    针对您的问题-尽管 MCU 手册做出了巨大努力-我同意(两者)描述(边沿时间和边沿计数)可以得到改进。   值得注意的是,魔鬼详细地说出来,但"细节程度"往往很难确定。

    [引用 USER="Filmon Elias ]*第一个要点说明"与 边沿计时计时器相同的周期计时器周期"

    • 根据我的理解、这意味着使用相同的时钟源。  [/报价]

    (可能)可以使用不同的时钟源-但这会增加风险和工作量-要求 "到哪点?"   因此选择了相同的时钟源 和 相同的计时器周期。  (周期定时器和边沿定时器) 最大限度地减少和/或消除错误源。

    [引用 USER="Filmon Elias "]对于第二 个要点,我不明白为什么我们需要周期 计时器需要更高的优先级[/引用]

    定期计时器用作"单向阀"-它(单独)确定"预期边缘"是否"缺失"。   显然,它的服务(必须)过于重,"正在监测的项目"。  (边沿计时器-在本例中)

    [引用 user="Filmon Elias"]我不知道应该减去哪个计数器、去皮 化计时器或边沿计时器?

    我敢打赌、您一定会理解!  周期定时器是"校验值"-它会提醒"延迟或缺失"脉冲-不会被计数。  (除非用于统计[错误事件]报告。)   边沿计时器-(可能)递增(由于"超时"而非法增加)必须被校正-因此它接收减法。

    Fire/I 始终敦促客户用户 "设计基于 MCU 的简单实验"、以强化关键:"信念、知识和理解"。   您可以对 GPIO 进行编程,以定期提供脉冲-将这些脉冲馈送到您选择的定时器输入-并在特定的“计数”时...  延迟(或"swallow")其中一个脉冲-同时监控 边沿定时器的反应。   

    如果我正确调用-边沿计时模式监视和记录、则捕获您所选事件的"快照时间"。   (单独)边沿计数模式-更简单地-跟踪已发生的"事件数"。   

    您可能想考虑-"何时最好雇用?"   如果输入信号"足够高的频率"-通常会选择"边沿计数"。   极低频率信号受益于边沿定时模式-在该模式下、"时间差分-跨越多个脉冲"可实现更高精度的频率测量...   (但仅在 完成"周期到频率"转换后...)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您的主题标题反映了您的关注、您只需通过捕捉中断或轮询来检查中断标志。

    如果问题的正文反映了您的问题、您可以检查溢出标志、或使溢出 ISR 中的变量递增、该变量用作捕获计数器的高字节/字/双字。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢响应 CB1_MOBILE。

    很抱歉、我仍然对周期性计时器如何捕获缺失的边沿提出疑问、请告知下面哪张图像最能代表两个计时器的交互方式。

    图1.

    图2.

    图3.

    再次感谢您、

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

    谢谢 Danny。

    我得到了您的意思、就是像下面的图像那样对每个溢出进行计数。 我只是对它描述的数据表方法很好奇。

    Count by variable

    谢谢、

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

    [引用 user="Filmon Elias "]我仍然对周期性计时器如何捕获缺失的边沿提出疑问,请告知下面哪张图像...

    我宁愿"不"被列入你应如何处理这一问题的范围。

    我已经说过、并且将再次这样做:"如果周期定时器产生中断、则表示 "预期信号边沿"没有及时到达。"   而且-我认为边缘计时器很可能会"递增"、因为它"重新加载"并启动另一个计数序列。

    如果问题是语言问题-可能我会推迟到您的图表中。   我将"技术合同"作为我工作的一个方面-这种"图纸"不像书面文字那样"清晰/令人信服"!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    "我不知道应该减去哪个计数器、"

    简单:"-1"="+"(-1)"="+" 0xFFF"、这是该特定设置中的默认周期。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢 CB1、我想周期性计时器将用于捕获两个边沿之间的时间。 但是、现在我看到的想法是根据检测到第一个边沿的时间来调整边沿计时器的大小。

    感谢您的帮助和对我天真的处理。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    HA、我看到、它从0到0xFFFF 回绕。

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

    谢谢我的朋友——“不是这样”天真!   相当不错的问题-再说一次-您的帖子中所涉及的关注和准备-都得到了(非常)很好的注意。 (感谢)

    说到"准备和外观"-随着您的职业发展-您可以享受 "精美的餐厅、船只、汽车等"、您会注意 到"准备和外观发挥着重要作用"-您 的帖子明显的关心和吸引力(我相信)是一个有效的磁体!

    在类似的"难以掌握"技术情况下-如果您的大脑"像我一样工作"(如果事实证明属实、员工会表示哀悼) 我发现 、最常将仔细考虑的"实验值"放入关键 MCU 寄存  器、然后运行代码、将极大地"提高和提升"理解。   ((非常)明亮可以"跳过那个步骤"-对我来说...)   (还有-您是否注意到-尽管我的"壳体"增加了重量/风阻-我的(沟渠居住)兔竞争者在上一转弯时"喷出"了-现在我... 正确- 回到导联...)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这样您就知道这种方法并不是非常可靠。 我不会自己使用它。