第五天我會利用聲音傳感器來控制led的開關。
那首先是這次需要的模組
高感度聲音傳感器
雖然說是高感度但其實靈敏度實在不怎麼好。
接線圖
實體圖
再來是arduino的部分
首先一樣要先設定led的腳位,這邊順便開啟監控器。
再來是利用analogRead()去讀取類比輸入的腳位。
再利用判斷式去判斷接收到的聲音大小,如果大於一定值,便讓布林值變為false。
剩下就是利用判斷是去改變led的狀態就可以了。
試著拍手就可以看到監控台接收到聲音的數值,而led大於一定值便會改變狀態。
程式碼
const byte pin=A0;
int micval=0;
bool toggle=false;
void setup(){
pinMode(13,OUTPUT);
Serial.begin(9600);
}
void loop() {
micval=analogRead(pin);
if(micval>80){
Serial.println(micval);
toggle=!toggle;
if(toggle){
digitalWrite(13,HIGH);
}
else{
digitalWrite(13,LOW);
}
}
}