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.

[参考译文] CCS/TM4C1294NCPDT:技术支持

Guru**** 2555070 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/873669/ccs-tm4c1294ncpdt-technical-support

器件型号:TM4C1294NCPDT

工具/软件:Code Composer Studio

 您好!

我希望获得有关编码器模块问题的技术支持、因为在方向计数模式下、它不起作用、 仅在正交模式下工作、我之前在讨论板中询问、如果您能帮我解决这个问题、我现在无法解决这个问题。

-邮件地址

alimagdi377@gmail.com

 -这里是引脚配置:

//步骤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);

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

    您好!

    首先、您为什么使用如此慢的系统时钟速度? 您应该从 VCO 运行并使用更高的时钟速度。 大多数用户将其设置为120 MHz。 要执行此操作的代码为:

    ui32SysClock = SysCtlClockFreqSet ((SYSCTL_XTAL_25MHz |
    SYSCTL_OSC_MAIN | SYSCTL_USE_PLL |
    SYSCTL_CFG_VCO_480)、120000000); 

    其次、您能更好地描述这个问题吗? 您是否确定了它的工作原理(即您获得/未获得什么结果)?  您使用的是哪种编码器模块? 您的目标是什么-"校验计数"不是我所熟悉的(请记住、我是 TM4C 器件专家、而不是编码器模块专家)。

    尝试一下可能发生的情况... 您谈到方向计数、那么您是否尝试检测方向的变化? 如果是这样、您需要使用 QEI_INTDIR 而不是 QEI_INTINDEX。