用户工具

站点工具


ocrobot:kit:arduino_star_kit:tutorial011

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
ocrobot:kit:arduino_star_kit:tutorial011 [2017/10/04 07:36] 弘毅ocrobot:kit:arduino_star_kit:tutorial011 [2023/06/07 04:23] (当前版本) – 外部编辑 127.0.0.1
行 1: 行 1:
 +======蜂鸣器======
 +<WRAP center round info 100%>
 +这个例程展示驱动一个阻抗为16Ω的无源蜂鸣器,让其发出声音。
 +</WRAP>
  
 +蜂鸣器分电磁式和压电式,每种里面还会分有源与无源。这里的“源”不是指电源,而是指震荡源。也就是说,有源蜂鸣器内部带震荡源,所以只要一通电就会叫;而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K-5K的方波去驱动它。有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路。
 +
 +=====搭建电路=====
 +{{:ocrobot:kit:arduino_star_kit:2014-5-18_21-39-25.png?nolink|}}
 +=====代码=====
 +<code cpp>
 +int buzzer=7;//设置控制蜂鸣器的数字IO脚
 +
 +void setup()
 +{
 +  pinMode(buzzer,OUTPUT);//设置数字IO脚模式,OUTPUT为输出
 +}
 +
 +void loop()
 +{  unsigned char i,j;//定义变量
 +  while(1)
 + {
 +    for(i=0;i<80;i++)//输出一个频率的声音
 +   {
 +      digitalWrite(buzzer,HIGH);//发声音
 +      delay(1);//延时1ms
 +      digitalWrite(buzzer,LOW);//不发声音
 +      delay(1);//延时ms
 +    }
 +
 +    for(j=0;j<100;j++)//输出另一个频率的声音
 +    {
 +      digitalWrite(buzzer,HIGH);//发声音
 +      delay(2);//延时2ms
 +     digitalWrite(buzzer,LOW);//不发声音
 +      delay(2);//延时2ms
 +    }
 +  }
 +}
 +
 +</code>
 +
 +{{youku>XNzEzMTAzODky?900x530}}
 +[[ocrobot:kit:arduino_star_kit:main|返回上一级]]