記事一覧

自作Arduinoを基板に乗せました

2013.03.17

ファイル 36-1.jpg
ボートローダを書き込んだATMEGA328を端材のユニバーサル基板に乗せてみました。部品点数は少ないけど、小さい基板に詰め込むのは結構大変でした。
ファイル 36-2.jpg
いつ断線orショートするか分からない危うい半田付けです・・・
とりあえずブレッドボードに刺せるようピンヘッダを仕込んでいます。

達人の域に達すればこんな技もできるみたいです
One-Chip Arduino ver. 2.0

にほんブログ村 その他趣味ブログ 電子工作へ

タグ:Arduino 自作

Arduino 2台体制で出来ること

2013.03.17

ファイル 35-1.jpg
昨日Arduinoクローンを作ったので2台体制となりました。
ここで以前から気になっていた、Arduinoでオシロスコープを動かすことを試してみました。
Arduinoで動くオシロをネットで検索してみると、
国立九州大学さんの「Arduino 簡易オシロスコープ」
Ichiro Marutaさんの「Arduinoで簡易オシロスコープ」
の2つが見つかりました。両方組んで試してみたのですが、Ichiroさんのオシロの方は追加部品も不要で簡単に作れます。
オシロを表示するプログラムは、Proccessingという実行環境を使用しますが、現在のバージョンではコンパイルが通らないので1.5.1を使います。
(ダウンロードページの下、Stable Releases 1.5.1)
Windows側は「Arduinoで簡易オシロスコープ」のソースをコピペして実行。
Arduino側はオシロのソース最後尾でコメント化されている「/* Arduino code」以下のコードをArduinoIDEにコピペしてコンパイル、1台目のArduinoにアップロード。
これで、オシロ側は完成!

続いて実験対象の作成ですが、2台目のArduinoに以下のプログラムを仕込みます。

int led = 13;

void setup() {
pinMode(led, OUTPUT);
Serial.begin(9600);
}

unsigned long prevMilli = millis();
int pls = 1;

void loop() {
unsigned long currentMilli = millis();
if (currentMilli - prevMilli > 1000) {
pls = pls < 10 ? pls+1: 1;
Serial.println(pls);
prevMilli = millis();
}
digitalWrite(led, HIGH);
delay(10);
digitalWrite(led, LOW);
delay(pls * 10);
}


サンプルソースのBlinkに手を入れてOn/Offの時間を切り替えるものです。
ファイル 35-4.png
2台目のArduinoを接続すると、IDEのシリアルポートにCOM4が追加されるので、そちらを選択してアップロード。
13番ピン、抵抗とGNDにオシロから引いてきたアナログ0、1、GNDを接続して計測。
Windows側で以下の波形が確認できました。
ファイル 35-2.png
(デューティ比50%)
ファイル 35-3.png
(デューティ比10%)

やっぱり画面でリアルタイムに波形が変化するのは見ていて楽しいですね。
あと、Proccessingという開発環境にも興味を持ちました。ArduinoIDEと似たインターフェイスで使用言語もC/C++っぽくて入りやすいです。
秋月のオシロスコープキットを買おうか迷っていたのですが、しばらくはこれで遊べそうです。

にほんブログ村 その他趣味ブログ 電子工作へ
にほんブログ村

タグ:Arduino 自作 オシロスコープ