前言

在這篇文章中,我們將介紹如何使用 Scratch 3 來控制 DiFi 內建的蜂鳴器。

開發環境建置

如果你還沒有建置 WFduino + Scratch 3 的開發環境,請參考這篇文章

線路圖

因為是內建元件,所以我們只要用跳線帽將元件接腳直接連接 GPIO 即可,實際接線圖如下:

DiFi V5.1 蜂鳴器與 GPIO

DiFi V5.1 蜂鳴器與 GPIO

蜂鳴器的接腳名稱為 BEEP,使用跳線帽時配對腳位編號為 IO15,其 WFduino 編號為 8。如果對腳位如何配對有不清楚的地方,可參考這裡的說明

測試蜂鳴器

首先我們利用數位輸出的方式,將腳位 8 設定為高電位,應該可以聽到蜂鳴器穩定發出聲音。

WFduino 利用數位輸出控制蜂鳴器 (Scratch 3)

WFduino 利用數位輸出控制蜂鳴器 (Scratch 3)

雖然利用這種方式就可以讓蜂鳴器發出聲音,不過發出來的聲音實在過於單調。我們改用類比輸出的方式,看看結果是否會有甚麼不同。

WFduino 利用 PWM 控制蜂鳴器 (Scratch 3)

WFduino 利用 PWM 控制蜂鳴器 (Scratch 3)

首先,我們定義一個 Beep 的變數,並在 Scratch 3 的舞台上將之設定為拉桿的形式,程式執行時則不斷地將 Beep 變數寫入類比輸出的積木。如之前所提到的,在寫入時我們先將拉桿的數字範圍 0~100 轉換成類比輸出積木的參數數字範圍 0~255。當程式開始執行後,我們可以試著改變 Beep 的數值,應該可以聽到蜂鳴器的聲音頻率產生變化。當數字越大時,發出的頻率就越高。

測試程式

雖然使用類比輸出的方式可以改變蜂鳴器所發出的聲音頻率,但是卻很難準確地控制實際產生的頻率。對此,WFduino 另外提供了撥放音調的積木,可以用來控制蜂鳴器所發出的聲音頻率與持續時間,如以下範例所示:

WFduino 控制蜂鳴器音調 (Scratch 3)

WFduino 控制蜂鳴器音調 (Scratch 3)

  1. 在這個範例中,我們利用撥放音調的積木,讓蜂鳴器產生一段音樂。
  2. 你聽得出來這是甚麼歌嗎?

使用撥放音調積木來控制蜂鳴器比使用類比或數位輸出積木更為方便與準確,而之前在 WFduino 2.0.3 preview 版本會因為播放升記號音調而導致 DiFi 重啟的錯誤也已經在 WFduino 2.0.4 preview 予以修正。所以除非有特殊需求,否則使用撥放音調積木來控制內建的蜂鳴器絕對是最推薦的做法。

Facebook 留言
Print Friendly, PDF & Email
Summary
WFduino + Scratch 3 + DiFi 控制蜂鳴器
Article Name
WFduino + Scratch 3 + DiFi 控制蜂鳴器
Description
在這篇文章中,我們將介紹如何使用 Scratch 3 來控制 DiFi 內建的蜂鳴器。
Author
Publisher Name
Everlearn Studio
Publisher Logo