#topicpath ** Arduino 互換(もどき)を自作する −ミニマルタイプ− [#d57bf608] -- Duemilanoveタイプ と同様に FTDI(FT232RL)を経由して PC と通信します。~ *** 部品 [#zad1300f] ++ |種別 |部品 |規格|価格(円)|まとめ買い時の個数|URL|h | | | | | | | |本体パーツ | | | | | | | | | | | | | | |AVRマイコン| ATmega168P | 210| 14個|http://akizukidenshi.com/catalog/g/gI-03033/ | | |ブレッドボード| EIC-301 | 150 |1個 | http://akizukidenshi.com/catalog/g/gP-00313/| | |ワイヤ|KQE0.5mm 50m|〜0 |50m|http://www.sengoku.co.jp/mod/sgk_cart/search.php?code=4ASM-KMLX| | |コンデンサ|0.1μF|10|10個|http://akizukidenshi.com/catalog/g/gP-00090/| | |抵抗|10kΩ|1|100個|http://akizukidenshi.com/catalog/g/gR-25103/| | |タクトスイッチ| |7|100個|http://akizukidenshi.com/catalog/g/gP-01282/| | | | | | | | | PCとの通信部分 | | | | | | | | | | | | | | |USBシリアル変換モジュール|FT232RL|950|1個|http://akizukidenshi.com/catalog/g/gK-01977/| | |ジャンパワイヤ| |〜100|いくつか|http://akizukidenshi.com/catalog/g/gP-02933/| | |抵抗|1kΩ|1×2|100個|http://akizukidenshi.com/catalog/g/gR-25102/| | |コンデンサ|0.1μF|10|10個|http://akizukidenshi.com/catalog/g/gP-00090/| | | | | | | | | ブートローダの仕込み | | | | | | | | | | | | | | |マイコンライタ|AVRISP mkII|4000|1 | http://akizukidenshi.com/catalog/g/gM-02582/| ※ 別途電源が必要である。~ ※ シリアル変換部分、ブートローダを書き込むためのライタを除けば、400円程度でできてしまう。~ *** 作る・配線 [#u9ca4a1e] ++ ATmega168P にラベルを貼る。~ &color(red){[[Duemilanove タイプ>../DuemilanoveTYPE]]と同じです。};~ ラベルは、[[このサイト>http://todbot.com/blog/2009/05/23/arduino-chip-sticker-label/]]にある[[PDFファイル>http://todbot.com/blog/wp-content/uploads/2009/05/arduino-atmega-sticker.pdf]]をダウンロードし、使わせてもらう。~ プリントされたくぼみの部分を合わせて合わせてラベルを貼るようにする。(つまり、1番のピンに rst、 28番のピンに ai5 が対応する。)~ ~ ++ 本体部分の構成~ 写真の白いボタンは「タクトスイッチ」、抵抗は10kΩ。青い部品は0.1μFのコンデンサ。~ 配線は[[Duemilanove タイプ>../DuemilanoveTYPE]]と同様で、水晶発振器と22pFのコンデンサだけ取り外した。~ タクトスイッチや10kΩの抵抗も取り外してよい。~ ただし、その場合は、1番ピン(rst)が10kΩで Vcc と接続しておかないとシリアル通信(パソコンからのスケッチ送信)できないことを覚えておく。 CENTER:&ref(sany0166.jpg,,320x240); ~ // CENTER:&ref(Arduino/Arduino の自作/ArduinoWired.jpg,,400x300);~ // LEFT:銀色の水晶発振器は、9番ピン(xt1)と10番ピン(xt2)の間につなぐ。 // // ここで、公開されている設計図との違いについて説明する。将来、動作が不安定になったらここを疑う。 // ○ 水晶発振器とグランド(GND)との間のコンデンサ(それぞれ22pFの)を省いた // ○ 両側のGNDは内部で接続されているようなので両者の間の接続を省いた ++ USBシリアル変換部~ &color(red){[[Duemilanove タイプ>../DuemilanoveTYPE]]と同じです。}; ~ +++ 変換部をブレッドボードに載せる。~ パソコンからのUSBケーブルを接続する部分を写真のように組み立てる。~ 抵抗はどちらも1kΩ、コンデンサは0.1μF。~ 基盤に書いてある文字はピンの間に書いてあって紛らわしい。文字の下のピンが該当する。~ 左下から 1番目(TxD), 2番目(DTR), 5番目(RxD)を使う。~ // CENTER:&ref(Arduino/Arduino の自作/USB232.jpg,,300x200);~ CENTER:&ref(Arduino/Arduino の自作/DuemilanoveTYPE/USB232C_2.jpg,,320x240);~ ~ +++ Arduino 側と接続する。~ ※ RS-232C のシリアル通信の場合、主従関係が無い。一方の RxD は他方の TxD につなぐことに注意。 // CENTER:&ref(Arduino/Arduino の自作/Arduino_USB.jpg,,400x300); |変換モジュール側|間に挟むもの|Arduino 本体側|h |Vcc| |Vcc(7番)(あるいは 20番上段)| |GND| |gnd(8番)(あるいは22番,下段)| |TxD| 抵抗1kΩ|rxd(2番)| |DTR| コンデンサ 0.1μF| rst(1番)| |RxD| 抵抗1kΩ|txd(3番)| ~ ~ *** ブートローダ [#oda10739] ++ 参照先~ 「[[ブートローダを仕込む>../ブートローダを仕込む]]」参照 ++ Duemilanoveタイプの場合の設定 Arduino IDE の中にある次のブートローダを送り込む。 aruino-0018\hardware\arduino\bootloaders\atmega\ATmegaBOOT_168_pro_8MHz.hex フューズの設定 Fuses : Extended 0xF8 High 0xDD Low 0xE2 Lock bits : 0xFF とする。~ ++ コメント~ 本当は、ブートローダを作り直したり、それに伴って boards.txt も変更したりする必要があるのだろう。ここでは 8MHz で動く Pro のものを代用している。~ ~ *** Arduino IDE [#c1fc39f8] -- ボードのタイプに Arduino Pro or Pro Mini (3.3V, 8MHz) w/ ATmega168 を選ぶ。 *** 資料 [#paa7cf37] ++ 履歴 +++ あっさり動く。2010-06-25 (金) 20:53:04~ LCD のサンプルプログラムも動いた。 ++ 参照 URL --- [[ミニマルなArduino>http://www.vector-scan.com/ws/2009/07/atm.php]]