http://www.microfan.jp/shop/6_191.html
先日、↑マイクロファンのarduino(ほぼ)互換機
reduino-nanoが新発売特価で売られていて、
ポチッと購入ボタンを押してみました。
昨日早速組み立てて、一通り遊んでみました。
![](https://blogimg.goo.ne.jp/user_image/61/d6/533dfb9bd469ddb620ab1e53f4e7caa0.jpg)
![](https://blogimg.goo.ne.jp/user_image/1c/16/c7aeeb447c5d9248122c2189f9aa30f1.jpg)
仕上がりはこんな感じ。赤いので、パッと見
gainerっぽいですか?
30分とは行きませんでしたが、1時間弱で
仕上がりました。ブートローダー書き込み済みで、
繋げばサクッと動くお手軽さ。
しかもブレッドボードを使わなくても
そこそこ遊べてしまいます。うーん、なかなか( ̄ー ̄)
PCとはUSBのミニBコネクタで接続。
ボード上のFT232RLでシリアル接続可能です。
当然tera-termなどからもアクセス可能。
表面実装部品はMEGA168とFT232RLだけ
ですし、この2つは最初からはんだ付け済みなので、
工作は楽々です。
写真をご覧になると想像つく通り、arduino-nano
やladyadaさんのboarduino
http://ladyada.net/make/boarduino/
に近い形状です。ブレッドボードに差しても
邪魔にならない細長さ。FT232RLを
登載しているのでUSB経由でサクッと書き込み
できます。
arduinoと完全互換ではありませんが、(リセット以外にも)
入力ボタンがあり、LEDも1個登載。
しかも入出力ピンがボード上部に出ているので、
ブレッドボードを使わなくてもLEDやブザー、
その他の小さい部品も簡単に繋げられます。
電源はUSBから供給。
(ジャンパーで外部電源に切替可)
細かい差異はマイクロファンのサイト上に有るので
そちらをご参照ください。
一点気をつけないとならないのは、MEGA168と
FT232RLの間の配線のこと。
USB登載のarduinoは保護抵抗が挟まっていますが、
reduino-nanoは抵抗が挟まっていません。
MEGA168のrxd端子はFT232RLに
常時直結したままなので、ブレッドボード上に
もう一つマイコンとか置いて、そこからUSART経由
(rxd端子)でi/fを入力するようなことはできません。
(下手に繋ぐとショートしちゃう…詳しくは各サイトの
回路図ご参照)
なおtxd端子はMEGA168から出力するだけなので
問題ありません。
gainerのように、常時PC接続してUSARTを
PC接続専用と充てるなら問題ありませんが、
reduino-nanoをスタンドアロンで使い、別のマイコン
から信号を入力する場合にはその点注意が必要です。
(SPIなどによる接続にしないとならない)
まぁ、その一点を除けば、他の細身のaruinoを
買うよりもこちらの方が機能面、価格面では
メリットが大きいと思います。個人的にはかなり
お勧め!
消費電力制限用のポリスイッチなども登載している
んですよね。よくできてます。
さて、LEDピコピコを一通り堪能した後、
以前から一度試してみたかったことを実行して
みました。
昔、PIC16F873とCCS-Cで作ったステッピング
モーター制御のプログラムのコア部分の処理速度。
浮動少数計算ライブラリを使っていたため1回の計算に
かなり時間を要していたのがずっと気になっていました。
で、AVRはどうなの?と気になっていたんです。
arduinoのIDEは基本的にはC言語系なので、
CCS-Cのプログラム(の一部)をカット&ペースト
して試してみました。問題なく動きます。
で、かたやPIC16F873(@20MHz)、かたやAT-MEGA168(@16MHz)。
1回あたりの計算に要する時間は、前者が3.5ms程度に
対し、後者は0.35ms程度。
おぉ。なんと10倍の速さ!!!
でも、MIPS値の大きいAVRならその分速くなっても
納得するのですが、せいぜい5倍前後のはず…。
なんでこんなに速いんだろう?と冷静に考えてみました。
16F873はハードウェア乗算命令の無いコア。
一方MEGA168はハードウェア乗算命令が2クロックで
計算可能。あぁ。多分これでしょう。
なるほど。やっぱAVR、速いねぇ!!
24Fxxxxシリーズに相当するのかな。
それにarduinoのIDE。こういう実験がサクッと
できちゃって、超便利だー!
そのうち、私のサイト上にもarduinoのコーナーを
こっそり増設したいと思います。
使い方とか言語リファレンスとか、ブートローダーの
読み書き方法など、備忘録的な感じの内容になると
思いますが。まぁ、期待せずにお待ちください。
(実験用の環境・ボードの色合いが濃いので、
これを固定的に組み込んで使うという用途は
あまり無いでしょうから…実験用の備忘録が
使い勝手良いかと。)
そういえば、arduino-IDEにはAVR-STUDIO
のようなシミュレーション環境が載ってないので、
常に実機確認しか出来ないのかな?
ICDも使えないだろうし(少なくとも端子は無い)。
そうすると、ますますロジアナが重要になるな…。
![](/images/clear.gif)
![](/images/clear.gif)
![](/images/clear.gif)
|