蜂鸣器是一种常用的电子发声元件,可分为有源蜂鸣器和无源蜂鸣器。有源蜂鸣器内部自带震荡源,通电后会发出固定频率的声音;无源蜂鸣器内部不带震荡源,需要使用2KHz到5KHz的脉冲信号驱动才能发声。以下是Arduino驱动蜂鸣器的简单入门教程:

  • 准备材料
    • Arduino开发板:如常见的Arduino Uno。
    • 蜂鸣器:有源蜂鸣器或无源蜂鸣器均可,可根据实际需求选择。
    • 杜邦线:若干,用于连接电路。
    • 电阻:如果使用无源蜂鸣器,一般需要一个100Ω左右的电阻;若为有源蜂鸣器,可能还需要一个1K-2K的电阻和一个PNP型三极管(如8550)用于搭建驱动电路。
  • 电路连接
    • 无源蜂鸣器:可不分正负极,将一个引脚通过100Ω电阻连接到Arduino的数字引脚(如D9),另一个引脚连接到GND。
    • 有源蜂鸣器:将有源蜂鸣器的正极(长脚)接5V,负极(短脚)接三极管的发射极(E极)。三极管的基极(B极)接1K欧姆电阻,再连接到Arduino的数字引脚(如D5),集电极(C极)接地。
  • 编写代码
    • 无源蜂鸣器示例代码
int pinBuzzer = 9; //管脚D9连接到蜂鸣器模块的信号脚
void setup() {
  pinMode(pinBuzzer, OUTPUT); //设置pinBuzzer脚为输出状态
}
void loop() {
  long frequency = 300; //频率, 单位Hz
  tone(pinBuzzer, frequency); //用tone()函数发出频率为frequency的波形
  delay(1000); //等待1000毫秒
  noTone(pinBuzzer); //停止发声
  delay(2000); //等待2000毫秒
}
- **有源蜂鸣器示例代码**:
int pinBuzzer = 5; //管脚D5连接到蜂鸣器元件的基极
void setup() {
  pinMode(pinBuzzer, OUTPUT); //设置pinBuzzer脚为输出状态
}
void loop() {
  digitalWrite(pinBuzzer, HIGH); //输出HIGH电平,停止发声
  delay(3000); //等待3000毫秒
  digitalWrite(pinBuzzer, LOW); //输出LOW电平,发声
  delay(1000); //等待1000毫秒
}
  • 上传与测试:将编写好的代码通过Arduino IDE上传到Arduino开发板中。上传成功后,即可看到蜂鸣器按照代码中的设置发声,若未正常发声,可检查电路连接是否正确、代码是否有误等。

0 条评论

目前还没有评论...