Skip to main content

Grove - 蜂鸣器

Grove蜂鸣器模块的主要组件是一个压电蜂鸣器。压电蜂鸣器可以连接到数字输出端,当输出为高电平时,会发出声音。另外,它也可以连接到模拟脉冲宽度调制输出端,以产生不同的声音和效果。

版本

产品版本变更内容发布日期
Grove-Buzzer V1.0初始版本2010年11月25日
Grove-Buzzer V1.1增加了S9013晶体管2014年5月30日

特性

  • 易于使用的压电蜂鸣器
  • 使用标准的4针Grove电缆连接到其他Grove模块,如Grove电源模块和Grove - Base Shield

:::提示 关于Grove模块的更多详情,请查阅Grove系统 :::

规格

项目规格
工作电压3.3V/5V
声音输出≥85dB
共振频率2300±300Hz

支持的平台

Arduino树莓派

:::注意 上述列出的支持平台是模块软件或理论兼容性的一个指示。在大多数情况下,我们仅针对Arduino平台提供软件库或代码示例。我们无法为所有可能的MCU平台提供软件库/演示代码。因此,用户需要自行编写软件库。 :::

入门指南

玩转 Arduino

硬件

  • 步骤1. 准备以下物品:
Seeeduino V4.2基础盾板Grove蜂鸣器
enter image description hereenter image description hereenter image description here
立即获取立即获取立即获取
  • 步骤 2. 将Grove-Buzzer连接到Grove-Base Shield的D6端口。
  • 步骤 3. 将Grove - Base Shield插入Seeeduino。
  • 步骤 4. 通过USB电缆将Seeeduino连接到电脑。

:::注意 如果没有Grove Base Shield,我们也可以按照以下方式直接将Grove-buzzer连接到Seeeduino。 :::

SeeeduinoGrove蜂鸣器
5V红色
GND黑色
未连接白色
D6黄色

软件

  • 步骤1. 将代码复制到Arduino IDE并上传。
void setup()
{
pinMode(6, OUTPUT);
}

void loop()
{
digitalWrite(6, HIGH);
delay(1000);
digitalWrite(6, LOW);
delay(1000);
}
  • 步骤 2. 我们会听到蜂鸣器不断地开关。

玩转 Codecraft

硬件

步骤 1. 将Grove - Buzzer连接到Base Shield的D6端口。

步骤 2. 将Base Shield插入您的Seeeduino/Arduino。

步骤 3. 通过USB电缆将Seeeduino/Arduino连接到您的电脑。

软件

步骤 1. 打开Codecraft,添加Arduino支持,并将一个主程序拖入工作区。

:::注意 如果是您第一次使用Codecraft,也请查看使用Arduino的Codecraft指南。 ::: 步骤 2. 按照下面的图片拖动代码块,或者打开本页面底部可以下载的cdc文件。

cc

将程序上传到你的Arduino/Seeeduino。

:::完成后 当代码上传完成后,你会听到蜂鸣器间歇性地发出声音。 :::

玩转 树莓派 (和 Grove Base Hat 树莓派)

硬件

  • 步骤 1. 本项目所需物品:
树莓派Grove Base Hat for RasPiGrove - 蜂鸣器
enter image description hereenter image description hereenter image description here
立即获取立即获取立即获取
  • 步骤 2. 将Grove Base Hat插入树莓派。
  • 步骤 3. 将Grove蜂鸣器连接到Base Hat的 PWM端口。
  • 步骤 4. 通过USB电缆将树莓派连接到电脑。

软件

:::注意 如果您使用的是带有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_pwm_buzzer.py

以下是grove_led.py的代码。


from __future__ import print_function

import time
from mraa import getGpioLookup
from upm import pyupm_buzzer as upmBuzzer

def main():
print("Insert Grove-Buzzer to Grove-Base-Hat slot PWM[12 13 VCC GND]")

# Grove Base Hat for Raspberry Pi
# PWM JST SLOT - PWM[12 13 VCC GND]
pin = 12
#
# Create the buzzer object using RaspberryPi GPIO12
mraa_pin = getGpioLookup("GPIO%d" % pin)
buzzer = upmBuzzer.Buzzer(mraa_pin)

chords = [upmBuzzer.BUZZER_DO, upmBuzzer.BUZZER_RE, upmBuzzer.BUZZER_MI,
upmBuzzer.BUZZER_FA, upmBuzzer.BUZZER_SOL, upmBuzzer.BUZZER_LA,
upmBuzzer.BUZZER_SI];

# Print sensor name
print(buzzer.name())

# Play sound (DO, RE, MI, etc.), pausing for 0.1 seconds between notes
for chord_ind in range (0,7):
# play each note for a half second
print(buzzer.playSound(chords[chord_ind], 500000))
time.sleep(0.1)

print("exiting application")

# Delete the buzzer object
del buzzer

if __name__ == '__main__':
main()



:::成功后 如果一切顺利,蜂鸣器会响几次然后停止,程序会自动退出。 :::

玩转树莓派 (使用 GrovePi_Plus)

硬件

  • 步骤 1. 准备以下物品:
树莓派GrovePi_PlusGrove - 蜂鸣器
enter image description hereenter image description hereenter image description here
立即获取立即获取立即获取
  • Step 2. 将GrovePi_Plus插入到树莓派中。
  • Step 3. 将Grove-蜂鸣器连接到GrovePi_Plus的D8端口。
  • Step 4. 通过USB线将树莓派连接到电脑。

软件

:::注意 如果你正在使用带有Raspberrypi OS >= Bullseye的树莓派,你必须仅使用Python3来执行这个命令行。 :::

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

  • 步骤 3. 执行以下命令。
cd ~/GrovePi/Software/Python
python3 grove_buzzer.py

以下是grove_buzzer.py的代码。

import time
import grovepi

# Connect the Grove Buzzer to digital port D8
# SIG,NC,VCC,GND
buzzer = 8

grovepi.pinMode(buzzer,"OUTPUT")

while True:
try:
# Buzz for 1 second
grovepi.digitalWrite(buzzer,1)
print ('start')
time.sleep(1)

# Stop buzzing for 1 second and repeat
grovepi.digitalWrite(buzzer,0)
print ('stop')
time.sleep(1)

except KeyboardInterrupt:
grovepi.digitalWrite(buzzer,0)
break
except IOError:
print ("Error")
  • 步骤 4. 我们会听到蜂鸣器不断地开启和关闭。
pi@raspberrypi:~/GrovePi/Software/Python $ python3 grove_buzzer.py
start
stop
start
stop

玩转 TI LaunchPad

硬件

  • 这个示例展示了如何使用Grove蜂鸣器模块来播放旋律。它向蜂鸣器发送适当频率的方波,从而产生相应的音调。

软件

/*
Buzzer
The example use a buzzer to play melodies. It sends a square wave of the
appropriate frequency to the buzzer, generating the corresponding tone.

The circuit:
* Buzzer attached to pin39 (J14 plug on Grove Base BoosterPack)
* one side pin (either one) to ground
* the other side pin to VCC
* LED anode (long leg) attached to RED_LED
* LED cathode (short leg) attached to ground

* Note:
This example code is in the public domain.

https://www.seeedstudio.com/wiki/index.php?title=GROVE_-_Starter_Kit_v1.1b#Grove_-_Buzzer

*/

/* Macro Define */
#define BUZZER_PIN 39 /* sig pin of the buzzer */

int length = 15; /* the number of notes */
char notes[] = "ccggaagffeeddc ";
int beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 };
int tempo = 300;

void setup()
{
/* set buzzer pin as output */
pinMode(BUZZER_PIN, OUTPUT);
}

void loop()
{
for(int i = 0; i < length; i++) {
if(notes[i] == ' ') {
delay(beats[i] * tempo);
} else {
playNote(notes[i], beats[i] * tempo);
}
delay(tempo / 2); /* delay between notes */
}

}

/* play tone */
void playTone(int tone, int duration) {
for (long i = 0; i < duration * 1000L; i += tone * 2) {
digitalWrite(BUZZER_PIN, HIGH);
delayMicroseconds(tone);
digitalWrite(BUZZER_PIN, LOW);
delayMicroseconds(tone);
}
}

void playNote(char note, int duration) {
char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };

// play the tone corresponding to the note name
for (int i = 0; i < 8; i++) {
if (names[i] == note) {
playTone(tones[i], duration);
}
}
}

Grove - 蜂鸣器原理图文件 v1.0

Grove - 蜂鸣器原理图文件 v1.1

资源

受《守望先锋》启发,我们最近制作了一款非常酷炫的木质激光枪玩具!

这款木质激光枪和枪靶都是基于一块名为 Seeeduino Lotus 的 Arduino 主板制作的。激光枪上的激光发射器可以控制发射激光脉冲以“激活”枪靶。枪靶上装有 3 个光传感器来检测激光脉冲。看起来很简单对吧?如果你对我们的项目感兴趣,那就为自己或你的孩子制作一个吧!花一天时间亲手制作它作为圣诞礼物,绝对物超所值。

项目

Grove - 蜂鸣器入门: 我与Grove“即插即用”组件的初步接触。这主要是一个蜂鸣器项目。

水资源浪费监测器: 每年有数百万加仑的水被浪费。通过这个项目学习如何节约用水吧!

蜂鸣器 Grove 模块:

感谢您选择我们的产品!我们在这里为您提供各种支持,以确保您在使用我们的产品时获得尽可能顺畅的体验。我们提供多种沟通渠道,以满足不同的偏好和需求。

## 技术支持与产品讨论

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

Loading Comments...