主题中讨论的其他器件:LVSERVOMTR
各位专家、您好!
编码器的初始化:
QDECCTL = 0x0000; //正交计数模式
QEPCTL[FREE_SOFT]=2;
QEPCTL[PCRM]= 0; //索引事件时位置计数器复位
QEPCTL[IEI]=0; //索引事件上位置计数不初始化
QEPCTL[IEL]= 0x3; //索引事件标记上的锁定
QPOSMAX = 4000-1; //编码器1.
//QPOSMAX = 10000-1; //编码器2.
它在2种不同的编码器类型上进行了测试(请参阅图片)。
问题:
方向的每次反转都会出现错误"位置计数器错误"(QFLG[PCE]=1)。 可以在两个编码器上看到这种现象。 此外、对于编码器2、该误差会随着运动方向"逆时针"而不时发生、尽管此处的运动方向没有变化。 这是我的初始化错误还是两个编码器错误、还是 F2837x 的一般行为?
我还注意到、中断"索引事件锁存中断"(QDL[IEL])和 QPOSCNT 的锁存只能在运行模式"索引事件上的位置计数器复位"(QEPCTL[PCRM]= 00)下实现。 在其他运行模式下(QEPCTL[PCRM]= 01、10、11)、无论编码器是如何初始化的、中断(QDL[IEL])还是 QPOSCNT 锁存都不可能实现。 我发现的是正确的吗?
您有什么提示或提示吗?
提前感谢- Bui