注釈
こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。
参加する理由は?
エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。
学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。
独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。
特別割引:最新製品の独占割引をお楽しみください。
祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。
👉 私たちと一緒に探索し、創造する準備はできていますか?[ ここ]をクリックして今すぐ参加しましょう!
フルーツピアノ
このプロジェクトは、MPR121タッチセンサーからの入力を読み取り、DACを通じて音楽を再生するシンプルなフルーツピアノです。言い換えれば、フルーツをキーボードに変え、それらに触れるだけで音楽を演奏できるようにしました。
必要なコンポーネント
このプロジェクトには以下のコンポーネントが必要です。
全体のキットを購入すると便利です。こちらがリンクです:
名称 |
このキットのアイテム数 |
リンク |
|---|---|---|
Elite Explorer Kit |
300+ |
以下のリンクから別々に購入することもできます。
コンポーネント紹介 |
購入リンク |
|---|---|
- |
|
- |
|
- |
配線図
回路図
コード
注釈
ファイル
02_fruit_piano.inoをelite-explorer-kit-main\fun_project\02_fruit_pianoのパスから直接開くことができます。または、このコードをArduino IDEにコピーしてください。
注釈
ライブラリをインストールするには、Arduinoライブラリマネージャーを使用し、 「Adafruit MPR121」 を検索してインストールしてください。
どのように動作しますか?
以下はコードの詳細な説明です:
ライブラリとオブジェクトの初期化:
必要なライブラリをインポートします:
Wireライブラリ(I2C通信用)、Adafruit_MPR121ライブラリ(MPR121のドライブ用)、analogWaveライブラリ(アナログ波形の生成用)、およびpitches.h(ノートの周波数を定義する)。Adafruit_MPR121とanalogWaveのオブジェクトのインスタンスを作成します。 各タッチチャネルに対応するノートを格納するノート配列を定義します。setup():シリアル通信を初期化し、開始を待ちます。 MPR121をチェックし、初期化します。見つからない場合は、シリアルモニタにエラーメッセージを表示し、実行を停止します。
analogWaveオブジェクトを初期化し、最初の正弦波周波数を10Hzに設定します。loop():MPR121の現在のタッチチャネルを読み取ります。 すべてのチャネルを反復処理し、どれがタッチされたかをチェックし、対応するノートを演奏します。 各反復の間にわずかな遅延を加えます。
ノートを演奏する
playNote():playNote関数はnoteパラメータを取り、対応するノートを演奏するためにDACの周波数を設定します。 ノートを演奏する期間遅延を加えます。 ノートの演奏を停止します。