一、元器件介绍

  

NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器_编码器

  旋转编码器(增量式编码器)可通过旋转可以计数正方向和反方向转动过程中输出脉冲的次数,旋转计数不像电位计,这种转动计数是没有限制的。配合旋转编码器上的按键,可以复位到初始状态,即从0开始计数。旋转编码器目前被广泛的应用在数控机床、印刷设备、包装机械、输送带、电梯、机器人、风力发电、起重机、家用电器等领域,主要用于频率调节、速度调节、高度调节、温度调节及音量调节等的参数控制。

  • 旋转编码器是一种位置传感器,它将旋钮的角位置(旋转)转换为输出信号,可用于确定旋钮的转动方向。
  • 旋转编码器分为绝对式和增量式两种。绝对编码器报告旋钮的精确位置(以度为单位),而增量编码器报告轴移动的增量数。
  • 旋转编码器是电位器的现代数字等效物,并且用途更广泛。旋转编码器可以不停地旋转360°,而电位器只能旋转3/4圈。电位器用于需要知道旋钮准确位置的情况。
1、旋转编码器如何工作?

  编码器内部有一个开槽圆盘,连接到公共接地引脚 C。它还具有两个接触针 A 和 B,如下所示。

  

NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器_编码器_02

  当您转动旋钮时,A 和 B 按照特定顺序与公共接地引脚 C 接触,具体顺序取决于转动旋钮的方向。当它们与公共地接触时,会产生两个信号。这些信号存在 90° 异相,因为一个引脚先于另一个引脚接触公共地。它被称为正交编码。

  

NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器_引脚_03

  当顺时针旋转旋钮时,A 引脚先于 B 引脚接地。当逆时针旋转旋钮时,B 引脚先于 A 引脚接地。通过监控每个引脚何时连接或断开接地,我们可以确定旋钮旋转的方向。这可以通过简单地观察 A 的状态改变时 B 的状态来完成。

当A改变状态时:

  如果 B != A,则顺时针转动旋钮。

  

NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器_顺时针_04


  如果 B = A,则逆时针转动旋钮。  

NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器_编码器_05

  版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:

2、针脚用途

编号

名称

功能

1

CLK

脉冲信号输出A

2

DT

脉冲信号输出B

3

SW

中间按键状态

4

+

电源正极

5

GND

电源负极

二、示例代码

1、代码:

元器件的针脚

ESP32模块的针脚

CLK;脉冲信号输出A

IO23

DT;脉冲信号输出B

IO22

SW;中间按键状态

IO21

+;电源正极

5V

GND;电源负极

GND

NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器_顺时针_06

  参照代码:(修改了点),修改后封装的的方法如下:

#region KY-040编码器
 RotaryEncoder rotaryEncoder1 = new RotaryEncoder();
 rotaryEncoder1.RotaryEncoderRunDemo();
 #endregion KY-040编码器
  • 1.
  • 2.
  • 3.
  • 4.
2、结果:

NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器_顺时针_07


 

作者:꧁执笔小白꧂