返回網站
返回網站

Music Box Class

下載IDE

第一支與第二支程式請參考講義親自撰打,第三支與第四支如以下。

第三支

int sound = 0;
//音階頻率
int freq[] = {262,294,330,349,392,440,494};
//輸入歌曲音調
int beetone[] = {5,3,3,4,2,2,1,2,3,4,5,5,5,5,3,3,4,2,2,1,3,5,5,3,2,2,2,2,2,3,4,3,3,3,3,3,4,5,5,3,3,4,2,2,1,3,5,5,1};
//輸入節拍
int beat[] = {1,1,2,1,1,2,1,1,1,1,1,1,2,1,1,2,1,1,2,1,1,1,1,4,1,1,1,1,1,1,2,1,1,1,1,1,1,2,1,1,2,1,1,2,1,1,1,1,4};
void setup() {
pinMode(sound,OUTPUT);
}
void loop() {
for(int i = 0 ; i < 49 ; i++){
tone(sound, freq[beetone[i]-1]);
delay(beat[i]*250);
noTone(sound);
delay(0);
}
delay(1000);
}

第四支

int sound = 0;
//音階頻率
int freq[] = {262,294,330,349,392,440,494,523,587,659,698,784,110};
//輸入歌曲音調
int xmastone[] = {5,5,10,9,8,5,5,5,10,9,8,6,6,6,11,10,9,6,12,12,11,9,10,8,5,5,10,9,8,5,5,5,10,9,8,6,6,11,10,9,12,12,12,12,13,12,11,9,8,10,10,10,10,10,10,10,12,8,9,10,11,11,11,11,10,10,10,10,10,9,9,8,9,12,10,10,10,10,10,10,10,12,8,9,10,11,11,11,11,10,10,10,10,12,12,11,9,8};
//輸入節拍
int beat[] = {1,1,1,1,1,2,1,1,1,1,1,2,1,1,1,1,1,2,1,1,1,1,1,1,2,1,1,1,1,1,2,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,2,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,2,1,1,2,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,4};
void setup() {
pinMode(sound,OUTPUT);
}

void loop() {
for(int i = 0 ; i < 99 ; i++){
tone(sound, freq[xmastone[i]-1]);
delay(beat[i]*250);
noTone(sound);
delay(5);
}
delay(1000);
}

課程講義

建議延伸閱讀

音樂與數學: 從弦內之音到弦外之音

下載延伸閱讀
訂閱
上一篇
ATTINY RGB控制
下一篇
Pixetto + micro:bit v2.0
 返回網站
Cookie的使用
我們使用cookie來改善瀏覽體驗、保證安全性和資料收集。一旦點擊接受,就表示你接受這些用於廣告和分析的cookie。你可以隨時更改你的cookie設定。 了解更多
全部接受
設定
全部拒絕
Cookie 設定
必要的Cookies
這些cookies支援安全性、網路管理和可訪問性等核心功能。這些cookies無法關閉。
分析性Cookies
這些cookies幫助我們更了解訪客與我們網站的互動情況,並幫助我們發現錯誤。
偏好的Cookies
這些cookies允許網站記住你的選擇,以提升功能性與個人化。
儲存