HS-KEY4L 4P按键模块
1、介绍 点这里回到目录
独立按键也称之为轻触开关,使用时以满足操作力的条件向开关操作方向施压,开关闭合接通;当撤销压力时开关即断开,其内部结构是靠金属弹片受力变化来实现通断的。如下四脚线路图我们可以很清晰的发现,正常情况下,按键的 1 和 2、3 和 4 脚是相连的;当我们按下按键时,四个脚相互接通;松开按键时,恢复正常状态。利用数字 I/O 可以实现按键控制,数字 I/O 端口的含义是INPUT 和 OUTPUT 接口,现在让我们尝试在 Arduino 中使用 I / O 的 INPUT 功能,即该功能是在本实验中从外部设备读取输出值。我们使用按键和 LED 灯来完成使用 INPUT 和 OUTPUT 作为组合的实验。我们的按键模块当按键被按下时输出低电平,当松开时,输出是高电平。
2、原理图 点这里回到目录
`
3、模块参数 点这里回到目录
引脚名称 | 描述 |
---|---|
G | GND(电源输入负极) |
V | VCC(电源输入正极) |
1 | 数字信号引脚 |
2 | 数字信号引脚 |
3 | 数字信号引脚 |
4 | 数字信号引脚 |
-
供电电压:3.3V / 5V
-
连接方式:PH2.0 端子线
-
安装方式:四螺丝固定
4、电路板尺寸 点这里回到目录
5、Arduino IDE示例程序 点这里回到目录
Arduino UNO 示例(适用于Mixly IDE、Arduino IDE):
volatile int light; void setup(){ light = 0; pinMode(6, OUTPUT); analogWrite(6, 0); pinMode(A0, INPUT); pinMode(A1, INPUT); pinMode(A2, INPUT); pinMode(A3, INPUT); } void loop(){ //led灯接D6引脚:四位按键模块1~4分别接开发板A0,A1,A2,A3 if (digitalRead(A0) == 0) { light = 0; } else if (digitalRead(A1) == 0) { light = 30; } else if (digitalRead(A2) == 0) { light = 125; } else if (digitalRead(A3) == 0) { light = 255; } delay(10); analogWrite(6, light); }
ESP32 Python 示例(适用于Mixly IDE /米思齐)
(开发板选择 Python ESP32 【ESP32 Generic(4MB)】切换为代码模式上传 ):
import machine
pin39 = machine.Pin(39, machine.Pin.IN)
pin36 = machine.Pin(36, machine.Pin.IN)
pin35 = machine.Pin(35, machine.Pin.IN)
pin34 = machine.Pin(34, machine.Pin.IN)
pwm2 = machine.PWM(machine.Pin(2))
light = 0
while True:
if pin39.value() == 0:
light = 0
elif pin36.value() == 0:
light = 15000
elif pin35.value() == 0:
light = 30000
elif pin34.value() == 0:
light = 60000
pwm2.duty_u16(light)
6、米思齐 Mixly 示例程序(图形化语言) 点这里回到目录
Arduino UNO 图形化示例程序:点击下载
ESP32 Python图形化示例程序:点击下载
7、测试环境搭建 点这里回到目录
Arduino UNO 测试环境搭建
准备配件:
- HELLO STEM UNO R3 开发板 *1
- HELLO STEM UNO R3 P 扩展板 *1
- USB type-c 数据线 *1
- LED灯模块(HS-F08L)*1
- 4P按键模块(HS-KEY4L)*1
- PH2.0 6P双头端子线 *1条
- PH2.0 3P双头端子线 *1条
电路接线图:
ESP32 Python 测试环境搭建
8、视频教程 点这里回到目录
Arduino UNO视频教程:点击查看
ESP32 Python视频教程:
9、测试结论 点这里回到目录
Arduino UNO测试结论:
器件连接好线之后,将上述程序烧录到Arduino UNO 开发板之后,接通电源。触发按键的信号口输出高低电平,通过判断信号口的高低电平状态,我们的按键模块按下时,输出低电平(0),否则输出高电平(1),达到目的。按下按键SW1将使得 LED 熄灭,按下按键SW2将使得LED发出微光,按下按键SW3将使得LED发出正常光,按下按键SW4使得LED发出强光。
ESP32 Python测试结论:器件连接好线之后,将上述程序烧录到ESP32 开发板之后,接通电源。触发按键的信号口输出高低电平,通过判断信号口的高低电平状态,我们的按键模块按下时,输出低电平(0),否则输出高电平(1),达到目的。按下按键SW1将使得 LED 熄灭,按下按键SW2将使得LED发出微光,按下按键SW3将使得LED发出正常光,按下按键SW4使得LED发出强光。