Arduino Pro Mini に関する記事です。
Arduino Pro Mini は...
ボードサイズ | 普通 | 小さい | ||
書き込み装置 | あり | なし | あり | なし |
ATMega328P | Arduino Uno | Arduino Pro | Arduino Nano | Arduino Pro Mini Arduino Mini (05) |
ATMega32U4 | Arduino Leonardo | Arduino Leonardo (ピンソケット無し) |
Arduino Micro Da Vinci 32U*1 |
Pro Micro*2 |
*1 Strawberry Linux 社の製品で正式な Arduino ではない。 *2 SparkFun 社の製品で正式な Arduino ではない。
簡単に言えば 小型化した UNO から書き込み装置 (USB<->シリアル) を抜いたもので、製造は SparkFun です。別途書き込み装置 (6ピン USB シリアル変換) が必要となります。
組み込みの場合、一旦スケッチを書き込んだら USB<->シリアル部は不要なので、その部分を分離しちゃいましょう!...というのが Pro や Pro Mini の考え方です (もちろん、その分お安いです)。
See Also:
Pro Mini は 5V / 16MHz 動作のものと 3.3V / 8MHz 動作のものがあります。どちらも Amazon で買えます。A6 / A7 のスルーホールのない Pro Mini は MCU が ATMega168P の可能性が高いのでご注意。
オリジナルは電源 LED が赤、内蔵 LED が緑のハズですが、私のものはどちらも赤でした (購入時価格: ¥270)。
私が購入したのはオリジナルとは異なるレイアウトのボードでした (購入時価格: ¥369)。画像右端の FTDI ピンヘッダが逆になっており、A6 / A7 の位置も左下になっています。
以前、ATmega328P を Arduino 化する記事を書きましたが、ここまで安いと 「あ、買ったほうが安いね晩のおかず!」 状態です (^^;A
Pro Mini にはピンヘッダと L字ピンヘッダが付属していました。5V 版はブレッドボードに挿して実験できるようにするため、ブレッドボードに挿す側のピンヘッダは秋月の細ピンヘッダを使いました。
A6(20) / A7(21) はアナログ入力専用です。裏面の A4 / A5 の隣にあるパッドは I2C 用のプルアップ抵抗取り付け用だそうです。
Pro Mini にピンヘッダを付けようかピンソケットを付けようか迷ったら秋月の足の長いピンソケットを取り付けるといいでしょう。
足の長いピンソケットをハンダ付けする際には、ポリイミド (カプトン) テープでピンを保護しておくと、余計な所にハンダが付着するのを防げます...余談ですが、中華シールドの中にはピンにハンダが付着していてマトモに Arduino に挿せないのがありますよね。
3.3V 製品が 8MHz なのは ATmega328P の仕様によるものなので、3.3V 製品で 16MHz のものを探しても見つからないと思います。以下データシートの記述を転載します。
|
回路図通りなら MIC5205 というレギュレータが載っているので、RAW ピンから電力を供給できます (Max 16V)。
See Also:
使い方は UNO と同じなのですが、Arduino IDE でボードを "Arduino Pro or Pro Mini"、プロセッサで適切な電圧を選ぶ必要があります。電圧を間違うと最悪の場合、ブートローダを書き込むハメになります。
肝心の書き込み装置ですが、FTDI の USB<->シリアル変換器が必要です。
[5V 用]
[3.3V 用]
上記製品は Pro Mini と直結できます。
もちろん、他の FTDI シリアル変換モジュールでも接続できますし、CP2102 搭載 USB<->シリアルモジュールでも接続できるものがあるようです。
COLOR | FTDI | PRO MINI |
Black | GND | BLK |
Brown | CTS | GND |
Red | VCC / VIO / 5V / 3V3 | VCC |
Orange | TXD | RXI |
Yellow | RXD | TXO |
Green | RTS (Arduino ではリセットに DTR を使う) | GRN |
厳密にはこの 6 本を接続する必要があります。Pro Mini 側にある BLK やら GRN は、まんま FTDI ケーブルの線の色です。互換品の場合、モノによっては FTDI ヘッダの並びが逆になっているので注意が必要です。
参考までに以下が AE-UM232R との接続例となります。
AE-TTL-232R だと、このように直結できます。但し、現在入手できる Arduino は DTR でリセットするのが本当で、RTS でリセットするのはイレギュラーなやり方です。なので、Arduino 全般で使う前提なら、RTS ではなく DTR が出ている製品を選ぶべきだと思われます。ややこしいですが、DTR が出ている製品は FTDI ケーブルの仕様には合致していません。
FTDI Basic と異なり、DIP (?) スイッチで 3.3V / 5V を切り替えられますので、Pro Mini にはこれが一番簡単で便利だと思います。
以下は CP2102 な USB シリアルモジュールです。メス<->メスのジャンパーワイヤーでストレート接続できます。リボンケーブルに色が付いているので結線を間違えにくいです (両端が GRN と BLK でしょ?)。
FTDI チップの載った USB シリアルモジュールのうち、あまりにも安価なものは海賊版の可能性が高いので避けた方が賢明です。そういうのでバクチするくらいなら CP2102 な USB シリアルモジュールを購入した方がいいと思います。
See Also:
3.3V 版にはこのボード固有の注意点があります。USB<->シリアルモジュールの種類によっては 信号レベルは 3.3V でも、FTDI ピンヘッダの VCC に 5V が出力されるものがあるからです。例えば、上で紹介した AE-TTL-232R は DIP スイッチの 2 を OFF 側にして信号レベル (VIO) を 3.3V にしても VCC (+5V) には 5V が出力されます。
FTDI ピンヘッダの VCC はレギュレータを通さず ATMEGA328P に直結されます。つまり、3.3V 版を 5V (8MHz) で動作させる事になります。VCC が 5V でも Pro Mini は壊れませんが、周辺回路を構築したまま 5V で書き込むと周辺回路が死にます。Pro Mini 用シールドを作って接続したまま 5V で書き込まないよう注意が必要です。
いずれかの対策を採る必要があります。3.3V 版は FTDI ピンヘッダの VCC ピンを抜くか、パターンカット...またはパターンカットした上で FTDI ピンヘッダの VCC ピンを RAW ピンにバイパスした方が間違いがなくていいのかもしれません。
TTL-232R-3V3 という 3.3V 用 FTDI ケーブルも VCC には 5V が出力されます...FTDI ピンヘッダを採用しているのですから、本来 Pro Mini 3.3V では FTDI ピンヘッダの VCC (のピン) にレギュレータを噛ますのが筋のような気がします。なお、FTDI Basic は信号レベルと VCC が一致していますので、この辺を難しく考えなくていいです。
ここにある情報が役に立って、「調べる手間が省けたからオマイに飯でもおごってやるよ」 というハートウォーミングな方がいらっしゃいましたら、下のボタンからどうぞ。