Arduinoに挑戦
電子工作してみたいなと思いまして、マイコンをやってみることにしました。
で、手軽に始められるArduinoを買ってみました。
買ったもの
電子工作とか全くの初心者なわけですが、Arduinoに挑戦するためにいろいろ買ってみました。
秋月電子通商さんで買いました。ネットだと近くに店がなくても買えるので便利です。
- Arduino Uno Rev 3
- USBケーブル
- ブレッドボード
- ユニバーサル基板
- はんだ吸い取り線
- 線材
- OLEDキャラクターディスプレイ
- ブレッドボード・ジャンパーコード
- LED各種
- 抵抗各種
- タクトスイッチ
- AVRマイコン ATMEGA328P-PU
- 圧電スピーカー
- フォトカプラ
などいろいろ買いました。
Arduinoの箱。ポップで可愛いね。
ブレッドボード。部品をブスブス刺してコードで繋ぐだけで回路を作れるスグレモノ。
Arduino本体。意外と小さい。MADE IN ITALY。
PCに繋いでLEDを点けてみる
WEBサイトを参考に見様見真似で遊んでみます。
PCに繋ぐと右上の「ON」のLEDがしました。USBから電源が供給されます。
Arduinoの5VのピンとGNDのピンにLEDと抵抗とスイッチを繋ぎ、ボタンを押すとLEDが点きました。
(抵抗を挟まないと電流が流れすぎてしまうらしいです。)
当たり前だけど嬉しいです。
スケッチ(プログラム)を書き込んでみる
ArduinoではホームページからダウンロードできるIDEを使ってプログラミングします。IDEがLinuxに対応しているのが嬉しいです。
言語はC++ベースなのでかなり気軽にプログラミングできます。
適当にインストールを済ませたら、早速プログラミングしてみます。
HIGHの信号(5V)とLOWの信号(0V)を交互に出力してLEDを点滅させてみます。
#define LED_PIN 9 void setup() { pinMode(LED_PIN,OUTPUT); } void loop() { digitalWrite(LED_PIN,HIGH); delay(500); digitalWrite(LED_PIN,LOW); delay(500); }
Arduinoではsetup()とloop()がメインの関数でsetup()がはじめに呼ばれて、その後loop()が繰り返し呼ばれます。
pinMode()で指定したピンを”入力”として使うのか”出力”として使うのかを設定しています。
digitalWrite()ではHIGHの信号かLOWの信号を出力しています。
実際に9番ピンにLEDと抵抗を繋いでスケッチを送信してみると、ちゃんと点滅しました。
プログラム通りに動くとかなり嬉しいです。(写真では点滅しているかわかりませんが)
あと、圧電スピーカを鳴らすためのtone()という関数が用意されていて、音をならすのは容易でした。
Arduinoはプログラミング初心者でもプログラミングの楽しさを実感できると思います。
普段PCでしかプログラミングしたことがない人もやってみると楽しめると思います。(シンプルなのにかなり感動しました)
これこそがプログラミングの楽しみですよね。
OLEDのキャラクターディスプレイについてはまた今度書こうと思います。
それでは。