LPC1700正交编码接口QEI寄存器详解-程正兴-西安交通大学

需积分: 32 111 下载量 129 浏览量 更新于2024-08-10 收藏 9.83MB PDF 举报
"寄存器汇总-小波分析算法与应用-程正兴-西安交通大学出版" 本文主要讨论了微处理器中的寄存器及其在不同功能部件中的应用,以Cortex-M3架构的LPC1700系列微控制器为例。在正交编码接口(QEI)部分,详细介绍了其用于编码器数据处理的寄存器。 QEI模块是用于处理增量式编码器信号的硬件单元,它能够计算编码器的旋转位置和速度。以下是一些关键的QEI寄存器: 1. QEICON (0x400B C000):这是控制寄存器,用于设置QEI模块的工作模式和配置。写入此寄存器可以启用或禁用QEI功能,以及配置其他操作参数。 2. QEICONF (0x400B C008):这是一个可读写寄存器,用于配置QEI的高级特性,如计数方向、边缘检测等。 3. QEISTAT (0x400B C004):编码器状态寄存器,提供当前模块的状态信息,如编码器的计数方向、索引脉冲检测等。 4. QEIPOS (0x400B C00C):位置寄存器,记录了编码器的当前位置值。 5. QEIMAXPOS (0x400B C010):大位置值寄存器,用于存储编码器的最大位置值。 6. CMPOS0-2 (0x400B C014, 0x400B C018, 0x400B C01C):位置比较寄存器,用于设定位置比较阈值,当编码器位置达到这些阈值时,会触发相应的中断或事件。 7. INXCNT (0x400B C020):索引计数寄存器,记录索引脉冲的数量。 8. INXCMP (0x400B C024):索引比较寄存器,用于设定索引脉冲的比较值。 9. QEILOAD (0x400B C028):速度定时器重载寄存器,用于设置速度定时器的初始计数值。 10. QEITIME (0x400B C02C):速度定时器寄存器,记录了定时器当前的计数值。 11. QEIVEL (0x400B C030):速度计数器寄存器,用于计算编码器的速度。 12. QEICAP (0x400B C034):速度捕获寄存器,记录了特定时刻的速度值。 QEI寄存器的使用需要对微控制器的中断设置、定时器操作和编码器信号处理有深入理解。通过设置和读取这些寄存器,开发者可以精确地控制和监控编码器的行为,实现对电机或其他机械设备的位置和速度精确控制。 此外,文档还涵盖了其他重要的功能部件,如系统节拍定时器(Systick)、脉冲宽度调制器(PWM)、电机控制PWM(MCPWM)、实时时钟(RTC)和A/D转换器(ADC)。每个部件都有其特定的寄存器结构和操作方法,共同构成了Cortex-M3处理器丰富的外设功能。对于嵌入式系统设计和开发人员来说,理解和掌握这些寄存器是实现高效、可靠的系统的关键。