旋转编码器模块(软件消抖)

目录

旋转编码器简介

模块接线

正交编码器控制原理 

模块代码

Encoder.h

Encoder.c 

main.c 

消抖代码 

Encoder.c


旋转编码器简介

旋转编码器是一种将旋转角位移转换为一连串数字脉冲信号的旋转式电位器。当编码器的旋转轴旋转时,其输出端可以输出与旋转速度和方向对应的正交方波信号,读取方波信号的频率和相位信息即可得知旋转轴的速度,位置,旋转方向

正交信号为两个一样的波形但相位差为90°,这提高输出信号的质量和稳定性,从而消除了干扰。

本博客使用的是EC11型号360度旋转编码器,旋转编码器一圈为20格,一格一完整脉冲,在静止的时候,AB两线输出都是高电平 

旋转编码器旋转的输出动作,由于编码器的不同,A、B端输出脉冲不同,我这一种就是转一格,A、B对C端输出一个完整脉冲。 

更多详细见:

EC11旋转编码器 | 立创开发板技术文档中心 (lckfb.com)

我的旋转编码器不能使用按键,本博客就不涉及按键检测了


模块接线

                                   旋转编码器电路

按键电路内部没接,C相内部已经已接入GND  

旋转编码器 STM32F103C8T6
VCC 3.3V
GND GND
A PB0
B PB1

正交编码器控制原理 

正交编码器正反转由自己定义

 A、B两相空闲状态都为高电平,编码器旋转时都输出方波,但两个信号有90°相位差

注:下面图形中的波形不是从空闲状态开始的

正转</

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值