工具与软件:
这是初始化代码。
void POSSPEED_Init (void)
{
EQep1Regs.QUALPRD = 2000000;// 200 MHz 上100Hz 的单位计时器
// SYSCLKOUT
EQep1Regs.QDECCTL.bit.QSRC = 00;// QEP 正交计数模式
EQep1Regs.QEPCTL.bit.free_soft = 2;
EQep1Regs.QEPCTL.bit.PCRM = 00;// PCRM=00 mode - QPOSCNT reset on
//索引事件
EQep1Regs.QEPCTL.bit.UTE = 1;// Unit Timeout Enable (启用单元超时)
EQep1Regs.QEPCTL.bit.QCLM = 1;// Latch on unit time out (锁存单元超时)
EQep1Regs.QPOSMAX = 0xffffffff;
EQep1Regs.QEPCTL.bit.QPEN = 1;// QEP enable (启用 QEP)
EQep1Regs.QCAPCTL.bit.UPP = 5;// 1/32 for unit position (适用于单元位置)
EQep1Regs.QCAPCTL.bit.CCP = 7;// 1/64用于 CAP 时钟
EQep1Regs.QCAPCTL.bit.CEN = 1;// QEP Capture Enable (启用 QEP 捕捉)
}