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.

[参考译文] TMS320F28075:eQEP -软件复位后、第一个索引事件上的位置计数器复位不可用

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/586660/tms320f28075-eqep---position-counter-reset-on-the-first-index-event-not-available-after-sw-reset

器件型号:TMS320F28075

您好!

我正在 TMS320F28075上使用 eQEP 外设。 我将其配置为在第一个事件(QECTL[PCRM]= 10)上管理位置计数器复位。 就在硬件复位后、FIMF 被正确检测、并且计数器按预期加载 QPOSIINIT 或 QPOSMAX 的值。 然后、我使用 SW 复位(QEPCTL[QPEN]= 0)、QEPSTS[FIMF)标志被复位。 但是、当外设从 SW 复位状态(QEPCTL[QPEN]= 1)中释放时、不会检测到下一个索引条件、并且计数器未按预期加载。

是否有解决方案可通过软件管理新的第一索引检测而不复位微控制器?

谢谢您的期待。

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

    您应该能够在不复位器件的情况下复位计数器。 我将於明日研究此事,并会在一天结束前作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我在工作台上确认了这种行为、但希望确保我们在相同的条件下工作。 您能否共享完整的 eQEP 配置代码进行验证?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在进一步调试时、您可以为模块(DevCfgRegs.SOFT4.bit.EQEP1)设置和清除器件级软件复位。 您确实需要完全重新初始化模块、但 FIMF 能够再次进行设置。

    我已向我们的设计团队提交了一个问题、以获取有关此行为的更多信息。 如果您可以发送您的 eQEP 配置、它肯定会有所帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Mark、您好!

    感谢您的调查。

    下面是我的配置:

    /*解锁对受保护寄存器的寄存器保护写入*/
    EALLOW;
    
    /*启用外设时钟*/
    CpuSysRegs.PCLKCR4.bit.EQEP2 = 1U;
    
    /*释放寄存器保护解锁*/
    EDIS;
    
    /**第一个索引上的复位计数器*/
    EQep2Regs.QEPCTL.bit.PCRM =;
    
    /*上升沿在索引信号的上升沿锁存位置计数器*/
    EQep2Regs.QEPCTL.bit.IEL = 1U;
    
    /*将最大计数器值设置为最大32位值*/
    EQep2Regs.QPOSMAX = 0xFFFFFFREGu;
    
    /**将计数器的初始化值设置为指定的输入值*/ EQep2Regs.QPOSITIv.Q=0xFFFFFFREGU;
    
    
    /*启用位置计数器*/
    EQep2Regs.QEPCTL.bit.QPEN = 1U; 

    此致

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

    我已将问题提交给我们的设计团队、以供他们参考。 没有 eQEP 模块内复位会复位状态机和 FIMF 标志等其他状态。 奇怪的是、当 QPEN 被清零时、FIMF 位被清零、但在位置计数器被重新启用后不能再次置位。

    在 F2807x、F2837xS、F2837xD 和 F28004x 器件上、SOFTPRESx 位将允许 eQEP 完全复位、而不影响系统的其他功能、但之后需要重新初始化 eQEP。 在较旧的器件上、如您所见、重置 FIMF 功能的唯一路径是重置器件。

    当我收到我们设计团队的回复时、我会告诉您。