- Raspberry Pi 3 Model B × 1
- 40Pinフラットリボンケーブル
- 40Pin T型GPIO拡張ボード
- ブレットボード × 1
- 圧電スピーカー(PKM13EPYH4000-A0) × 1
- 抵抗 1kΩ × 1
- ジャンプワイヤー(オス/オス) × 3
GPIO12の出力モードをハードウェアPWMに設定する
前回と同じように、LXTerminalを起動して次のコマンドを実行すると、GPIO12の出力モードがハードウェアPWMに設定されます。
gpio -g mode 12 pwm
下のコマンドで実行結果を確認します。
gpio readall
BCM列”12”番の”Mode”列が、既定の”IN”から”ALT0”に変わっています。この拡張機能”ALT0”は、GPIO12の場合、ハードウェアPWMの”0″チャンネルが割り当てられています。
併せて、タスクバー右のスピーカーアイコンを右クリックし、オーディオ出力先として「Analog」を選択しておきます。
Scratch 2の音ライブラリーからhip hopのループを再生する
Scratch 2を起動して、ブロックパレット上のタブ「音」をクリックします。
ブロックパレット上のスピーカーアイコンをクリックします。
カテゴリー「音楽のループ」のブロック「hip hop」を選択し「OK」ボタンをクリックします。
ブロックパレットに「hip hop」が現れるのでスクリプトエリアの「▶」ボタンをクリックして再生します。
Scratch 2のスクリプトで圧電スピーカーから440Hzを鳴らす
ブロックパレット上のタブ「スクリプト」をクリックします。
カテゴリー「音」のブロック「楽器を1▼にする」をスクリプトエリアに引き出します。
ブロック「楽器を1▼にする」の”▼”をクリックして出てきたメニューから「(20) シンセリード」を選択します。
カテゴリー「音」のブロック「60▼の音符を0.5拍鳴らす」をブロック「楽器を20▼にする」の下に繋げます。
ブロック「60▼の音符を0.5拍鳴らす」の”▼”をクリックして出てきた鍵盤から”A(69):440Hz”を選択します。
ブロック「69▼の音符を0.5拍鳴らす」の”0.5″を”20″で上書きします。
できたスクリプトをクリックすると、シンセリードの音でA4:440Hzが鳴ります。
音を止めるには、ステージ右上の赤?ボタンをクリックします。
GPIO12を既定の入力モードに戻しておく
LXTerminal画面に戻って次のコマンドを実行し、GPIO12を既定の入力モードに戻しておきます。