Skip to main content

Grove - 开关(P)

这款 Grove – 开关是一种迷你 SPDT 滑动开关,非常适合“开/关”场景。它是一款质量可靠的开关,我们在许多板子上都采用了它。您应该为您的 Grove 原型系统备一些这样的开关。

“P”是什么意思?在这个产品中,“P”代表“面板安装”。

版本

产品版本变更内容发布日期
Grove-Switch(P) V1.0初始版本2012年7月

特性

  • Grove 接口
  • 易于使用
  • 基础 Grove 元件
tip

有关 Grove 模块的更多详细信息,请参考 Grove 系统

规格

参数值/范围
工作电压3.3/5V
电气寿命10,000 次循环
操作力200 ± 50gf
工作温度-20℃ 至 +80℃
尺寸20mmX20mm

支持的平台

ArduinoRaspberry Pi
caution

上述提到的支持平台仅表示模块的软件或理论兼容性。我们通常只为 Arduino 平台提供软件库或代码示例。无法为所有可能的 MCU 平台提供软件库或演示代码。因此,用户需要自行编写软件库。

入门指南

note

如果这是您第一次使用 Arduino,我们强烈建议您在开始之前查看 Arduino 入门指南

使用 Arduino

硬件

  • 步骤 1. 准备以下物品:
Seeeduino V4.2Base ShieldGrove-Switch(P)Grove - 紫色 LED (3mm)
图片描述图片描述图片描述
立即购买立即购买立即购买立即购买
  • 步骤 2. 将 Grove-Switch(P) 连接到 Grove-Base Shield 的 D2 端口。
  • 步骤 3. 将 Grove-LED 连接到 Grove-Base Shield 的 D6 端口。
  • 步骤 4. 将 Grove-Base Shield 插入 Seeeduino。
  • 步骤 5. 使用 USB 数据线将 Seeeduino 连接到电脑。

note

如果没有 Grove Base Shield,我们也可以直接将 Grove-Switch(P) 和 Grove - 紫色 LED (3mm) 连接到 Seeeduino,如下所示。

SeeeduinoGrove-Switch(P)SeeeduinoGrove - 紫色 LED (3mm)
5V红色5V红色
GND黑色GND黑色
NC白色NC白色
D2黄色D6黄色

软件

  • 步骤 1. 请将以下代码复制到 Arduino IDE 并上传到 Arduino。如果您不知道如何上传代码,请查看 如何上传代码
const int switchPin = 2;     // 按钮引脚编号
const int ledPin = 6; // LED 引脚编号

int switchState = 0; // 用于读取按钮状态的变量

void setup() {
// 初始化 LED 引脚为输出模式:
pinMode(ledPin, OUTPUT);
// 初始化按钮引脚为输入模式:
pinMode(switchPin, INPUT);
Serial.begin(9600);
}

void loop(){
// 读取按钮状态:
switchState = digitalRead(switchPin);

if (switchState == HIGH) {
// 打开 LED:
digitalWrite(ledPin, HIGH);
Serial.println("按钮高电平!");
}
else {
// 关闭 LED:
digitalWrite(ledPin, LOW);
Serial.println("按钮低电平");
}
}
  • 步骤 2. 当按钮切换到高电平时,LED 会亮起。同时可以在串口输出中看到如下信息:
按钮高电平!
按钮高电平!
按钮高电平!

使用 Raspberry Pi (配合 Grove Base Hat for Raspberry Pi)

硬件

  • 步骤 1. 准备以下物品:
Raspberry PiGrove Base Hat for RasPiGrove - Switch P
图片描述图片描述图片描述
立即购买立即购买立即购买
  • 步骤 2. 将 Grove Base Hat 插入 Raspberry Pi。
  • 步骤 3. 将开关连接到 Base Hat 的 12 号端口。
  • 步骤 4. 使用 USB 数据线将 Raspberry Pi 连接到电脑。

note

在步骤 3 中,您可以将开关连接到 任何 GPIO 端口,但请确保在代码中使用对应的端口编号。

软件

caution

如果您使用的是 Raspberry Pi 且 Raspberry Pi OS >= Bullseye,您必须仅使用 Python3 来运行命令。

  • 步骤 1. 按照 软件设置指南 配置开发环境。
  • 步骤 2. 通过克隆 grove.py 库下载源文件。
cd ~
git clone https://github.com/Seeed-Studio/grove.py
  • 步骤 3. 执行以下命令运行代码。
cd grove.py/grove
python3 grove_switch.py 12

以下是 grove_switch.py 的代码:

import time
from grove.gpio import GPIO

class GroveTiltSwitch(GPIO):
def __init__(self, pin):
super(GroveTiltSwitch, self).__init__(pin, GPIO.IN)

@property
def state(self):
return super(GroveTiltSwitch, self).read()

Grove = GroveTiltSwitch

def main():
import sys

if len(sys.argv) < 2:
print('Usage: {} pin'.format(sys.argv[0]))
sys.exit(1)

swicth = GroveTiltSwitch(int(sys.argv[1]))

while True:
if swicth.state is 1:
print("开")
else:
print("关")
time.sleep(1)

if __name__ == '__main__':
main()
tip

如果一切正常,您将能够看到如下结果:

pi@raspberrypi:~/grove.py/grove $ python3 grove_switch.py 12







^CTraceback (most recent call last):
File "grove_switch.py", line 70, in <module>
main()
File "grove_switch.py", line 66, in main
time.sleep(1)
KeyboardInterrupt

您可以通过按 ++ctrl+c++ 退出程序。

使用 Raspberry Pi (配合 GrovePi_Plus)

硬件

  • 步骤 1. 准备以下物品:
Raspberry PiGrovePi_PlusGrove-Switch(P)
图片描述图片描述图片描述
立即购买立即购买立即购买
  • 步骤 2. 将 GrovePi_Plus 插入到树莓派中。
  • 步骤 3. 将 Grove-Switch(P) 连接到 GrovePi_Plus 的 D3 端口。
  • 步骤 4. 使用 USB 数据线将树莓派连接到电脑。

软件

caution

如果您使用的是 Raspberry Pi 且 Raspberrypi OS >= Bullseye,您必须仅使用 Python3 执行以下命令。

  • 步骤 1. 按照 设置软件 配置开发环境。
  • 步骤 2. 克隆 Github 仓库。
cd ~
git clone https://github.com/DexterInd/GrovePi.git

  • 步骤 3. 执行以下命令以监控开关状态。
cd ~/GrovePi/Software/Python
python3 grove_switch.py

以下是 grove_switch.py 的代码。

import time
import grovepi

# 将 Grove 开关连接到数字端口 D3
# SIG,NC,VCC,GND
switch = 3

grovepi.pinMode(switch,"INPUT")

while True:
try:
print(grovepi.digitalRead(switch))
time.sleep(.5)

except IOError:
print ("Error")
  • 步骤 4. 您将看到如下所示的开关状态。
pi@raspberrypi:~/GrovePi/Software/Python $ python3 grove_switch.py 
1
1
0
0
0

在线原理图查看器

资源

项目

使用开关控制继电器的开关:您将学习开关的高低电平功能。此外,您还将学习如何使用继电器作为执行器。

技术支持与产品讨论

感谢您选择我们的产品!我们为您提供多种支持渠道,以确保您使用我们的产品时体验顺畅。我们提供多种沟通方式,以满足不同的偏好和需求。

Loading Comments...