本篇博客重点在于标准库函数的理解与使用,搭建一个框架便于快速开发
目录
前言
建议先阅读这篇博客,理解定时器输入捕获的配置和旋转编码器的使用
通过外部中断的方式处理编码器信号固然可以,而且任意两个可配置外部中断的GPIO口都可以进行,但是,如果处理转得非常快的电机的旋转编码器,那就会因为频发触发中断, 占用太多CPU软件计算资源,导致其他任务无法正常执行,而且电机太快的话 ,还很有可能软件处理跟不上 ,导致丢步问题。这节我们来使用定时器的编码器接口处理信号。
编码器接口简介
Encoder Interface 编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT计数器自增或自减,从而指示编码器的位置、旋转方向和旋转速度
每个高级定时器和通用定时器都有1个编码器接口
两个输入引脚借用了输入捕获的通道1和通道2
编码器框图
STM32F10xxx通用定时器为TIM2、TIM3、TIM4和TIM5
正交编码器
正交编码器正反转由自己定义
编码器正交波形动态展示:视频时间段为00:50至1:57旋转编码器|从零开始认识各种传感器_哔哩哔