位置计数器初始化

3.位置计数器初始化

可以按以下事件进行初始化操作:

①零位事件。QEPI零位脉冲输入信号可以用来在零位脉冲输入信号的上升沿或下降沿初始化位置计数器。如果控制寄存器(QEPCTL)的IEI位为10,则位置计数器QPOSCNT的值在零位脉冲输入信号的上升沿初始化为位置计数器初始化寄存器QPOSINIT的值。如果控制寄存器QEPCTL的IEI位为11,则位置计数器QPOSCNT的值在零位脉冲输入信号的下降沿初始化为位置计数器初始化寄存器QPOSINIT的值。当位置计数器初始化为位置计数器初始化寄存器QPOSINIT的值后,将置位中断标志寄存器QFLG的IEI位。

978-7-111-57271-8-Chapter09-12.jpg

图9-9 选通事件锁存过程

②选通事件。如果控制寄存器QEPCTL的SEI位为10,则位置计数器(QPOSCNT)的值存零位脉冲输入的上升沿初始化为位置计数器初始化寄存器(QPOSINIT)的值。如果控制寄存器(QEPCTL的SEI位为11,则位置计数器(QPOSCNT)的值在零位脉冲输入的下降沿初始化为位置计数器初始化寄存器(QPOSINIT)的值。当位置计数器初始化为位置计数器初始化寄存器(QPOSINIT)的值后,将置位中断标志寄存器QFLG的SEI位。

③软件初始化。通过软件写1到控制寄存器(QEPCTL)的SWI位,也可初始化位置计数器。初始化后位置计数器自动清零。