冬營營招生中

2019年7月21日 星期日

[micro:bit x Nexus:bit] 電吉他(開文章前請先關喇叭)







在這篇中,我們要用Nexus:bit擴充板做一個簡易電吉他:按下A鍵時蜂鳴器會響,並根據micro:bit的轉動角度(旋轉感測值-roll)來調整音高。

當然,轉動角度要視我們面對micro:bit的方向而定。在這個範例中,我們將以右手拿著Nexus:bit,所以當micro:bit往手肘方向轉時,roll角度值會變小,反之往外轉會變大。而我們希望往手肘轉時音高會提高,往外轉則是降低。

因此,首先我們得限制讀到的旋轉值角度在-60到30度之間;接著,我們把這個值對應到高音C(-60度時)至中音C(30度時)。如此一來,當你按住A並在這個區間轉動micro:bit時,聲音頻率就會改變了。

「中音C」與「高音C」的積木得從「音樂」區拖出來用。或者你可以直接輸入你想要的聲音範圍的頻率

為了增添點變化,我們也在「重複無限次」迴圈內加入讓RGB LED亮起隨機顏色的積木。另外這兒加了25秒延遲,好讓蜂鳴器的聲音能稍微穩定點、但又不至於拖太久。










當然,你也可以更進一步,把Nexus:bit裝在DIY的吉他裝置上。不過這麼一來Nexus:bit面對自己的方向就會相反了,你或許得調整程式如下:









沒有留言:

張貼留言