Arduinoは,基板(マイコンボード)と開発環境で構成されたフィジカルコンピューティングシステムです.
特徴としてオープンソースハードウェアであることが挙げられます.
Arduinoには用途に応じて様々な種類のボードが用意されていますが,今回購入したのは,一通りの基本機能を搭載したArduino Duemilanoveです.
Amazonにて「Arduinoをはじめようキット」を4200円で買いました.
付属品はこんな感じ
※Arduinoは,USB経由で給電とプログラムの書き込みを行うのですが,この「Arduinoをはじめようキット」にはUSBケーブルがついてません!!(はじめようキットなのに・・・)
そのため,自分でB端子のUSBを用意する必要があります.
・USB端子
・電源プラグ
・デジタル入出力ポート×14
・3.3V電源
・5V電源
・アナログ入力ポート×6
・アナログ出力ポート×6
・リセットスイッチ(プログラムを初めから実行する)
・モニター用端子
http://arduino.cc/en/Main/Software
Windowsの場合,arduino-00**.zipをダウンロードするかと思います.
展開してから,arduino.exeをダブルクリックしてください.これだけで実装環境の構築が終わりました.
※arduino.exeはJavaVM上で動作します.そのため,事前にJavaをインストールする必要があります.
プログラムの実行手順は下記の通りです.
1. プログラムを記述
2. エラーがないか確認(一番左のVerifyボタン)
3. アップロード(右から2番目のUploadボタン)
うまくアップロードできると,Arduinoが点滅します.
もし,アップロード時にエラーがでるようでしたら,デバイスマネージャにて,正しくデバドラがインストールされているか,また,接続されているCOMポートの番号と実装環境のTools->Serial Portで選択されているCOMポートの番号が一致しているかを確かめてください.
試しに,付属の光素子とスイッチを使用して光に反応する2進数カウンタを作ってみました.
ちょっとわかりにくいですが・・・
ソースはこちら
C-likeですね.define部分は接続した入出力ポートに合わせてください.
setup関数は一番初めに一度だけ実行される関数.loop関数はプログラムの本体となり,ここに記述されている内容が繰り返し実行されます.
#define LED3 8 #define LED2 7 #define LED1 6 #define BUTTON 9 #define INTERVAL 10 #define CDS 10 int count = 0; int before_cds = LOW; void setup(){ pinMode(LED3, OUTPUT); pinMode(LED2, OUTPUT); pinMode(LED1, OUTPUT); pinMode(BUTTON, INPUT); pinMode(CDS, INPUT); } void check_count(){ if((count & 4) == 4){ digitalWrite(LED3, HIGH); } else { digitalWrite(LED3, LOW); } if((count & 2) == 2){ digitalWrite(LED2, HIGH); } else { digitalWrite(LED2, LOW); } if((count & 1) == 1){ digitalWrite(LED1, HIGH); } else { digitalWrite(LED1, LOW); } } void loop(){ int cds_input = digitalRead(CDS); int button_input = digitalRead(BUTTON); delay(INTERVAL); if(cds_input != before_cds){ before_cds = cds_input; if(cds_input == HIGH){ count++; } } check_count(); if( button_input == HIGH ){ count = 0; check_count(); } }