//------------------------------------------------ //author:Victor Chen //web :www.vic8051.com //參考資料:Arduino實作入門與應用 ----台灣/松崗 //------------------------------------------------ //ar18 音階音效、雷射槍音效 int bz=8; // 設定喇叭腳位 void setup()//設定初值 { pinMode(bz, OUTPUT); //設定腳位為輸出模式 digitalWrite(bz, LOW); //設定腳位為低電位 be();//嗶一聲 delay(1000); // 延遲1秒 } //-------------------------------------- void be()//嗶一聲 { int i; for(i=0; i<100; i++) { digitalWrite(bz, HIGH); delay(1); //設定高電位 digitalWrite(bz, LOW); delay(1); //設定低電位 } } //-------------------------------------- void ef1()//救護車音效 { int i; for(i=0; i<5; i++) { tone(bz, 500); delay(300); //頻率500Hz tone(bz, 1000); delay(300); //頻率1000Hz } noTone(bz); delay(1000); } //-------------------------------------- void ef2() //音階音效 { int i; for(i=0; i<10; i++) { tone(bz, 500+50*i); delay(100); //頻率可變化 } noTone(bz); delay(1000); } //-------------------------------------- void ef3() //雷射槍音效 { int i; for(i=0; i<30; i++) { tone(bz, 700+50*i); delay(30); //頻率變化幅度變大 } noTone(bz); delay(1000); } //-------------------------------------- void loop()//主程式 { ef1();//救護車音效 ef2();//音階音效 ef3();//雷射槍音效 }