工具/软件:Code Composer Studio
大家好、我在 Tiva 1294中使用 QEI 模块、当我使用方向计数模式时、计数器会向我提供无意义的分散数据、我检查了寄存器映射、一切都在控制寄存器中、 是否有人可以检查我设置的配置并为我提供帮助。 -这里是引脚配置:
//步骤1. 将 GPIO 引脚配置为用作编码器引脚
SysCtlPeripheralEnable (SYSCTL_Periph_GPIOL);
GPIOPinConfigure (GPIO_PL1_PHA0);
GPIOPinConfigure (GPIO_PL2_PHB0);
GPIOPinConfigure (GPIO_PL3_IDX0);
//步骤2. 使能编码器引脚
SysCtlPeripheralEnable (SYSCTL_Periph_QEI0);
GPIOPinTypeQEI (GPIO_PORTL_base、GPIO_PIN_1);//通道 A
GPIOPinTypeQEI (GPIO_PORTL_base、GPIO_PIN_2);//通道 B
GPIOPinTypeQEI (GPIO_PORTL_base、GPIO_PIN_3);//通道 I
//步骤3. 启用编码器模块
QEIEnable (QEI0);
//步骤4. 启用索引中断
QEIIntEnable (QEI0、QEI_INTINDEX);
//步骤5. 焊盘配置
GPIOPadConfigSet (GPIO_PORTL_base、GPIO_PIN_1 | GPIO_PIN_2、GPIO_Strength _8mA_SC、GPIO_PIN_TYPE_STD_WPU);
-下面是配置为在方向计数模式下工作的模块:
QEIConfigure (QEI0、(QEI_CONFIG_CAPTURE_A | QEI_CONFIG_NO_RESET | QEI_CONFIG_CLOCK_DIR | QEI_CONFIG_NO_SWaP)、2500);
-下面是我使用的时钟设置:
SysCtlClockFreqSet (SYSCTL_OSC_INT、16000000);
