【Arduino】使用手機透過藍牙控制Arduino
這一次我們要練習的是Arduino的藍牙模組,透過這個模組,我們就可以在不同的Arduino之間相互通訊,同時也可以使用手機的APP程式控制Arduino上的輸出裝置。如果同學們學會了這項技巧,就可以做出許多利用手機控制Arduino遙控車、家用電器以及任何其它使用Arduino連接的裝置。
資訊技術教材網
這一次我們要練習的是Arduino的藍牙模組,透過這個模組,我們就可以在不同的Arduino之間相互通訊,同時也可以使用手機的APP程式控制Arduino上的輸出裝置。如果同學們學會了這項技巧,就可以做出許多利用手機控制Arduino遙控車、家用電器以及任何其它使用Arduino連接的裝置。
同樣是紅外線的應用,前一個接收器在應用的時候是考慮到接收的內容,也就是不同的按鈕要有不同的字串,以辨識出到底是哪一個按鈕被按下去,然後才可以根據不同的按鈕做出不同的回應,以達到紅外線遙控的功能。然而,紅外線的另外一個應用則不是用來控制,只要單純想要用來檢測前面有沒有東西,或是用來對於前面經過的事物做一個簡單的計次功能,此時要使用的就是包括發射以及接收紅外線的成對的模組,由於它們經常被拿來做為自走車的避障機制,因此常被稱為避障模組
紅外線是目前許多電器常用的遙控器標準通訊方式,因此是非常適用於嵌入式系統中使用的通訊方法,事實上也幾乎是標準的通訊模組,有非常多現成的程式以及電路可以利用,而且其零件也非當便宜。在這個實習中,我們就來瞭解如何把紅外線遙控器運用到我們的Arduino專題中。
使用查表法用在解譯簡譜算是滿方便的,因為可以把別人的簡譜直接拿來使用,由程式來進行翻譯就好了。不過,如果只有1~7個音階時還算是好用,但是如果把音階再擴展至高音以及低音的部份,很顯然地,只使用數字是不夠的。
Arduino本身可以透過delay函數進行簡單的計時,但是本身卻沒有時鐘的功能,也沒有記憶目前時間的功能,因此就算是我們利用程式模擬出時鐘的功能,一旦失去了電源,下次再回來程式的時候,又要重頭開始設定時間了,此種情形在製作和時鐘相關的應用專題時就非常地不方便。所幸,有一個模組可以解決這個問題,那就是DS1302 RTC(Real Time Clock)模組。
在前一個單元中我們把想要演奏的音樂簡譜放在song1這個變數中,然後一個一個字元地拆解出來,分別送到note這個自訂積木去播放每一個音符。這個程式在操作起來還算是容易,但是你有沒有注意到幾個可以加強的點?
有些時候我們的專題製作需要有可以輸入資料的介面,對於Arduino來說當然不能直接加上電腦的鍵盤,而且別忘了,在開發階段時Arduino是連接到電腦,可以使用電腦的鍵盤輸入沒錯,但是一旦在產品階段時,Arduino不但失去了電腦螢幕,當然也就沒有電腦的鍵盤可以使用了,所以在實用上,如果需要輸入數字資料,通常我們會去找一個數字鍵盤模組來使用。