SyntaxHigh

Sunday, July 21, 2013

CP2102 and Arduino Pro Mini

CP2102 モジュール. $2
Maybe you think arduino is too expensive for prototyping, because it's very easily destroyed by trivial mistakes. ATMega328p may break, the chip for serial communication may break, and otherwise the three-terminal regulator may break.

I was newbie, and I did not take care of not breaking arduinos. As a result I lost some of them.

Arduino is too structured and hard to fix when broken, so in prototyping like I was doing, I need more fundamental modules, that is, some USB-serial converter and the simple breakout of ATMega328.

CP2102 module is the cheapest one for USB-serial converter; it's sold for only $2 in aliexpress.com, we have to buy 10 of them at once though. Also, arduino pro mini costs only $3.

I bought some of them and this is a small report for testing a pair of those modules to blink the 13th LED.

13$ で買える FTDI のモジュールがおすすめ.僕の場合,Arduino Uno の ATMega8u4 が壊れていたので,壊れる原因を探るつもりで 10個 $20 で購入した.安い.

機能の違いはあまりわからない.Arduino を使う以上,書き込みができてシリアル通信が速ければ良い.データシートを見る限りあまり違いが見えなかったので購入を決定.

Arduino に Auto-reset をかけるには,CP2102 の DTR を Arduino の RST に入力する必要があるのだが,CP2102 の DTR が外に出ているモジュールや,そうでないモジュールがある.

Auto-reset をかけられなくても,書き込みすると同時にリセットボタンを押してやると書き込める.机の上でブレッドボードをいじるはこれで十分なのだが,以下を参考にすると Uno に外部から書き込めるようになった.

http://www.incrediblediy.com/2013/03/modifying-cheap-cp2102-usb-to-uart.html

運良く DTR は端っこのピンなので,ハンダ付はそれほど難しくない.
Arduino Pro mini. $4.5 

あとは RST のパターンを切る.ちゃんと切れていないと,デバイスがうまく認識されない.

RealTerm をつかってうまく出ているかどうか見てみる.

ちゃんと出ている.

Pro mini は二個で $9のもの.CP2102 と繋ぐ.GRN(なぜこんな名前なんだ?) を CP2102 の DTR とつなぐ.3.3V でも 5.0V でも正常に書き込みができた.

次に Arduino Uno に外部から書き込みしようとしたところ,リセットをかけられない.VCC を 3.3V にすると可能だった.というか 3.3V なのに 16MHz で動作したのが驚き.

嬉しいことに,壊れたと思っていた Arduino のボードにも,外部からなら書き込める.どうやら 8u4 が壊れたせいで 328p も壊れていたのかもしれない.


3.3V で Auto reset できた.
Pro mini は生基盤の上に載せるつもり.

CP2102 を USBExpress の Configuration ソフトで見ると,VID, PID が設定可能なようだ.おそらくここをデバイスごとに書き換えてやると,Arduino Uno と同じように個体毎にいつも決まった COM が割り当てられるようになる.

No comments:

Post a Comment