本帖最后由 lulugl 于 2024-1-15 10:59 编辑

【目的】学习使用TIM1的高级定时器的编码器接口
【实验硬件】
1、灵动 Mini-F5333开发板
2、旋转编码器
【前言】
TIM1与TIM8为高级定时器,他支持编码器、霍尔传感器等接口。他的TI1和TI2正交信号相互作用下计数,在输入源改变期间,计数方向被硬件自动修改。通过读取寄存器的计数值CNT可以获取到编码器的旋转步数。通读取CR1 的 TIM_CR1_DIR_Msk寄存器可以得到旋转的方向。
【实现步骤】
1、打开例程\LibSamples\TIM1_8\TIM1_8_Encoder\MDK-ARM的工程。
2、编译下载到开发板。
【硬件连接】
编码器                           开发板
CLK     -----------------  PA8
DT      ------------------ PA9
GND  -------------------GND
VDD  --------------------VDD

【实验现象】
通过旋转编码器,可以在串口中打印出方向与当前旋转的位置
image.png
【小结】
编码器接口非常有用,可以应用到现实中的许多工程中,如旋转菜单,电机控制等。