1. 程式人生 > >arduino學習筆記3 蜂鳴器

arduino學習筆記3 蜂鳴器

首先呢,蜂鳴器長這樣

標籤上標了正極,如果標籤揭掉了,黑色的外殼上也有刻正極。

1.蜂鳴器

需要麵包板,arduino,蜂鳴器一個,220歐電阻一個,導線若干

int buzzer=8;//設定控制蜂鳴器的數字IO腳
int i = 0;
void setup() 
{ 
pinMode(buzzer,OUTPUT);//設定數字IO腳模式,OUTPUT為輸出 
} 
void loop() 
{ 
    for(i=0;i<80;i++)//輸出一個頻率的聲音
    { 
      digitalWrite(buzzer,HIGH);//發聲音
      delay(1);//延時1ms 
      digitalWrite(buzzer,LOW);//不發聲音
      delay(1);//延時ms 
    } 
    for(i=0;i<100;i++)//輸出另一個頻率的聲音 
    { 
      digitalWrite(buzzer,HIGH);//發聲音
      delay(2);//延時2ms 
      digitalWrite(buzzer,LOW);//不發聲音
      delay(2);//延時2ms 
    } 
}

接線圖如下

上傳後蜂鳴器就會鳴叫了。


現加一個按鍵來控制

int inpin=7;//設定數字介面7控制按鍵
int buzzer=8;//設定控制蜂鳴器的數字介面8
int val;
void setup() 
{ 
pinMode(buzzer,OUTPUT);//蜂鳴器為輸出
pinMode(inpin,INPUT);//按鍵為輸入
} 
void loop() 
{ 
  val=digitalRead(inpin);
  if(val==HIGH)
    digitalWrite(buzzer,HIGH);//發聲音 
  else
    digitalWrite(buzzer,LOW);//不發聲音
}

接線圖如下

此時按下按鍵蜂鳴器響,不按下按鍵則沒有聲音

2.光控聲音

需要:麵包板,arduino,跳線若干,光敏電阻,蜂鳴器

int buzzer=6;//設定控制蜂鳴器的數字IO腳
int i = 0;
void setup() 
{ 
pinMode(buzzer,OUTPUT);//設定數字IO腳模式,OUTPUT為輸出 
} 
void loop() 
{ 
    for(i=0;i<80;i++)//輸出一個頻率的聲音
    { 
      digitalWrite(buzzer,HIGH);//發聲音
      delay(1);//延時1ms 
      digitalWrite(buzzer,LOW);//不發聲音
      delay(1);//延時1ms 
    } 
    for(i=0;i<100;i++)//輸出另一個頻率的聲音 
    { 
      digitalWrite(buzzer,HIGH);//發聲音
      delay(2);//延時2ms 
      digitalWrite(buzzer,LOW);//不發聲音
      delay(2);//延時2ms 
    } 
}


接線圖如下

此時由於光敏電阻在光的照射下,阻值會變小,所以光照在光敏電阻上的強度越大,蜂鳴器就越響。