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.

[参考译文] TM4C123AH6PM:QEISTAT寄存器错误位-信号持续时间和重置

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1090681/tm4c123ah6pm-qeistat-register-error-bit---signal-duration-and-reset

部件号:TM4C123AH6PM

大家好,

QEISTAT寄存器有一个名为ERROR的位,"检测到错误时"设置为高。

我在文档中的任何位置都找不到有关"该位保持设置多长时间"的信息。 当两个正交信号同时发生变化时,它是否会在几个时钟期间短暂地高电平,并且在它回到零后立即高电平? 它是否会一度变高而再也不会回到低???

如果短暂的高电位,Tivaware QEIErrorGET()函数将没有太大意义,除非我们有幸在错误发生期间调用它。

此致

布鲁诺

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

    您好,Bruno:

     很高兴再次听到您的讲话。 希望您做得好。  

    它的时钟在几个相同的时间和两个正时短暂地变为零时会变高吗? 它是否会一次过高,一次过也不会回到低???[/QUOT]

    在我看来,QEISTAT寄存器中的错误标志不是粘滞的。 如果错误位是粘滞的(例如,在错误事件之后仍然保持设置),则软件必须有一种方法来清除它。 如果没有通过软件清除位的方法,清除位的唯一方法是进行外围设备重置。 因此,我不认为错误位是粘性的。 您是否注意到一些不同的地方?

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

    您好Charles! 这里一切都很好,谢谢,希望你们做得好!

    我完全同意这可能不是粘性的。 我没有遇到创建人工"编码器错误"信号的麻烦,因为我没有硬件可用,只在我们的编码器库中添加了一些额外的错误检查(是的,在没有错误的情况下处理编码器库, 多么有趣的事情!)。 进一步解释:

    到目前为止,我们的旧库不会检查编码器错误情况, 但是我们最近有几个单元给我们提供了奇怪的距离数据,这可能是一个原因,所以我尝试通过软件诊断"错误编码器"(在真实设备中探测传感器并不容易)。

    然后我被我发布的问题所吸引...如果问题不是粘性的,我如何确定我正在读取错误位"在它回到零之前"? 解决方案:我创建了一个ISR来维修编码器错误,在 那里我可以检查中断原因是否是错误标志。

    但是,我不确定如何确定错误是否已消失...  我们需要这样做,因为一对QEI信号在短时间内同时转换并非不可能(所述'错误'的定义),例如, 当编码器通电时-之后,编码器100 % 正常,但软件已检测到“坏编码器”,并仍被卡住。

    希望解释清楚,感觉自己有点困惑!   

    谢谢

    布鲁诺

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

    您好,

     我也没有硬件来验证QEI是否存在此错误(两个信号同时发生变化)。

    解决403.8663万解决方案403.8663万方案 :我可以在编码器中检查错误和中断。

    我也会尝试这样做。  目前我认为错误不会导致中断的产生。 根据数据表,会为 相位误差,方向变化,接收索引脉冲和速度计时器过期生成中断。 如果是这种情况,如果您在ISR中,错误标志可能仍为0,即使在您读取之前可能已经发生。  

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

    查尔斯

    我相信我所描述的“错误”确实会触发中断。 正如您所指出的,有四个事件可以触发QEI中断:

    1–索引脉冲
    2–速度计时器过期
    3–方向改变
    4–正交错误检测

    我们所讨论的错误似乎正是(从我能阅读和理解的所有内容来看)此列表中的第4项。  

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

    您好,Bruno:

     好的,谢谢! 我不知道QEISTAT寄存器中的错误标志是 正交错误的另一个指示,因为我认为正交错误与相位错误更相关。