質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

解決済

1回答

7283閲覧

Arduinoの関数を呼び出し

Yoshikun_0945

総合スコア224

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2016/11/22 00:48

#実行したいこと
下記の関数をループ処理の時に実行する
これは、Arduinoのスピーカーを使用して音階(ド~高いドまで)を鳴らすプログラムです。
ド~高いドまでを出力したら、2秒開けて繰り返す。
また、ド・レ・ミ…の各音の間は、少し開けて出力する

###呼び出したい関数

void out(int oto, int length){ tone(PIN,oto,length); //ド delay(length); tone(PIN,oto,length) ; // レ delay(length) ; tone(PIN,oto,length) ; // ミ delay(length) ; tone(PIN,oto,length) ; // ファ delay(length) ; tone(PIN,oto,length) ; // ソ delay(length) ; tone(PIN,oto,length) ; // ラ delay(length) ; tone(PIN,oto,length) ; // シ delay(length) ; tone(PIN,oto,length) ; // ド }

関数の実行方法を教えていただけますか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

単純に以下の方法で良いと考えます。

arduino

1#define SOUND_DO 262 2#define SOUND_RE 294 3#define SOUND_MI 330 4#define SOUND_FA 349 5#define SOUND_SO 392 6#define SOUND_RA 440 7#define SOUND_SI 494 8#define SOUND_DO_HIGH 523 9#define SOUND_LENGTH 500 // 音を鳴らす長さ 10#define SOUND_PIN 12 // 圧電ブザーのポート 11int length1 = 200; // ドレミの間隔のミリ秒 12int length2 = 150; // それ以外の間隔ミリ秒 13void loop() 14{ 15 out(length1,length2); 16 delay(2000); 17} 18void out(int length1,int length2) 19{ 20 tone(SOUND_PIN,SOUND_DO,SOUND_LENGTH); 21 delay(length1); 22 tone(SOUND_PIN,SOUND_RE,SOUND_LENGTH); 23 delay(length1); 24 tone(SOUND_PIN,SOUND_MI,SOUND_LENGTH); 25 delay(length1); 26 tone(SOUND_PIN,SOUND_FA,SOUND_LENGTH); 27 delay(length2); 28 tone(SOUND_PIN,SOUND_SO,SOUND_LENGTH); 29 delay(length2); 30 tone(SOUND_PIN,SOUND_RA,SOUND_LENGTH); 31 delay(length2); 32 tone(SOUND_PIN,SOUND_SI,SOUND_LENGTH); 33 delay(length2); 34 tone(SOUND_PIN,SOUND_DO_HIDH,SOUND_LENGTH); 35// delay(length2); 36} 37

投稿2016/11/22 02:03

MasahikoHirata

総合スコア3747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問