一、TIM编码器模式配置函数
1. HAL_TIM_Encoder_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
功能:
启动定时器的编码器接口功能。
参数:
htim:定时器句柄指针
Channel:编码器通道选择(TIM_CHANNEL_1、TIM_CHANNEL_2、TIM_CHANNEL_ALL)
特点:
使能编码器接口模式
启动定时器计数器
根据编码器信号自动增减计数值
支持正交编码器的A相和B相信号
工作模式:
仅在TI1计数:只在TI1边沿计数
仅在TI2计数:只在TI2边沿计数
在TI1和TI2计数:在TI1和TI2边沿都计数
2. __HAL_TIM_GET_COUNTER(HANDLE)
功能:
读取定时器计数器的当前值(CNT寄存器)
参数:
__HANDLE__:定时器句柄
特点:
这是一个宏定义,直接读取CNT寄存器
在编码器模式下返回当前位置计数值
立即获取当前计数值,无延迟
可用于计算转速、位置等
3. __HAL_TIM_IS_TIM_COUNTING_DOWN(HANDLE)
功能:
检查定时器当前计数方向。
参数:
__HANDLE__:定时器句柄
特点:
这是一个宏定义,读取方向标志位
返回非零值表示向下计数,0表示向上计数
在编码器模式下反映旋转方向
可用于判断电机转向