プログラミングを学びたいと思っている小学生がいるけど、親が分かっていない。
パソコンのプログラミングのみだと、すぐに飽きてします。
電気の知識を学んだことがあるけど、イメージがわかない。
こんな人達に、Arduinoのスタートキットを使って、初心者や子供わかる回路構成とプログラミング内容について紹介します。
ELEGOO社製のArduino互換品は非常に安価で製品も多数入っているため、初心者が最初に学ぶ際には非常におすすめです。
準備するもの
・Arduino Uno
・電子ブザー
・タクトスイッチ
・ジャンパ線
基本的には上記スタートキットに入っていますので、それを使用することをおすすめします。
Arduino 回路を作成してみる
ではArduino回路を作っていきましょう。
電子ブザーをブレッドボードに差し込む。電子ブザーには+極と-極の極性があるので注意してください。
+極側をArduinoの12ピンに接続します。
-極側をGNDに接続します。
以上で回路は完成です。
プログラムを作成してみる。
プログラム内容は下記になります。
int buzzer = 12;//the pin of the active buzzer
void setup()
{
pinMode(buzzer,OUTPUT);//initialize the buzzer pin as an output
}
void loop()
{
unsigned char i;
while(1)
{
//output an frequency
for(i=0;i<80;i++)
{
digitalWrite(buzzer,HIGH);
delay(1);//wait for 1ms
digitalWrite(buzzer,LOW);
delay(1);//wait for 1ms
}
//output another frequency
for(i=0;i<100;i++)
{
digitalWrite(buzzer,HIGH);
delay(2);//wait for 2ms
digitalWrite(buzzer,LOW);
delay(2);//wait for 2ms
}
}
}
pinMode(pin,mode)
ピンの動作を入力か出力に設定します。今回はbuzzerを出力設定しています。
digitalWrite(pin, value)
HIGHまたはLOWを、指定したピンに出力します。
今回はbuzzerを出力都市、High(ON), LOW(OFF)を指定しています。
delay()
プログラムを指定した時間だけ止めます。単位はミリ秒です(1,000ミリ秒=1秒)。
プログラムを作成したら、実際にコンパイルして、音を出してみましょう。
プログラム内の、iの数値(現在は80, 100)の数値を変化させて再度マイコンボードに書き込むと、音の性質が変わることを確認できます。また、delayの時間を変えることでも音の雰囲気を変えることができますので、自由に変化させてみましょう。
こんな感じでいろいろやってみましょう。
実際に音を出してみた
youtubeで動画も紹介していますので、見てみてください。