ピックワールド(PIC World)

インフォメーション

この記事は 2017年11月11日 に以下のカテゴリに投稿されました Arduino Blog.

この記事のタグ

, , , , , , , , , , , ,


Arduino のブートローダー書き込み機を作ってみた – 回路図と 3D Printer で出力できるケース(他)付きだよ~

まぁいろいろやっていて、このところ Arduino を単体で使うことが多いかなって感じ。

ブレッドボード上に組んだブートローダー書き込み機

ブレッドボード上に組んだブートローダー書き込み機

で、今まではこんな風にブレッドボードを使ってごく普通に回路を組んで、生の Atmel ATMega328P を買ってきて、ブートローダーを書き込んでいたんだよね。

今回、回路を描いて、穴あき基板上に作ったので、それを紹介します。

まぁ、その理由は、

  • 小っちゃいブレッドボードが足りなくなった
  • 手持ちも部品もあるし、これなら作っちゃってもいいか
  • ゼロプレッシャーソケットも手持ちのものを使っていたのだけれど、これ、基板用なので、いまいち安定しないんだよね
  • いまいちブレッドボード上のブートローダー書き込み機だと、ちゃんと動いているのか、目視で確認できないから、これを何とかしたい

これぐらい。

なお、どうして Arduino UNO とかじゃぁないのの理由には、最低限の回路で動かして、小型化したいからというのと、UNO じゃお高いから(こちらの安いの使えばいいんだけど)。

では早速回路図。(汚いけど)

Arduino Bootloader Writer Sketch_回路図

Arduino Bootloader Writer Sketch_回路図

実は何で回路図を書こうかなぁと試行錯誤した。

Eagle は有名だけれど、これ、癖が強いねぇ。いまだに上手に使えないよ~

部品を動かすだけでも特殊に感じてイラついたので、途中でやめた。

で、使ったツールは、Fritzing というツール。(こっちも癖アルネェ)

これ、回路図もかけるし、ブレッドボード上での実体配線図(みたいなの)もかけちゃというもの。

プリント基板作るなら、Eagle かなって思うけれど、Fritzing でもできないことはないみたいだし、直感的に操作できるので。

でも、まだβ版だからかな?

イメージに出力すると、なんか線が重複しているように見える。(悪いけど気にしないでね)

で、必要な部品は、

  1. 28ピンのゼロプレッシャーソケット
  2. 16Mhz の水晶発振器
  3. 22pF のコンデンサ2個
  4. 6P ピンヘッダー(オス)

以下は任意で、(LED いらなければだけど)

  1. LED4個 色違いのほうが良いかも
  2. 抵抗器
    330Ω 3本
    150Ω 1本
    10KΩ 1本
  3. 3P ピンヘッダー(オス)

それ以外に必要なのは、親機の Arduino と接続するためのケーブルや、はんだや線材です。

で、これらを回路図のように組んで、Arduino と接続する。

Arduino Bootloader Writer(テスト中)

Arduino Bootloader Writer(テスト中)

多くのサイトで紹介されているけれども、ブートローダの書き込み方法は、以下の通り。

  1. 親機となる Arduino に、ブートローダを書き込むためのプログラムを転送する。
    Arduino IDE を起動して、ファイル -> スケッチ例 -> ArduinoISP -> ArduinoISP を開いて、コンパイル後、親機の Arduino に転送する。
  2. 作成したブートローダー書き込み機に書き込みする ATMega328P を差し込み、親機の Arduino と接続する。電源が入っていれば、書き込み機の Power ランプが点灯するはず。
  3. Arduino IDE で、ツール -> 書き込み装置 -> Arduino as ISP を選択(似たような名前のものがあるので注意!)
  4. Arduino IDE で、ツール -> ブートローダーを書き込む を選択すると、書き込みが開始され、数秒で完了します。書き込んでいる際には3連のLED(画像の右)が点滅しますよん。
ブートローダーの書き込み完了

ブートローダーの書き込み完了

上で、あとは任意で・・と書いた、LED も、これはなくても動くけれど、つけておくと、書き込みの際に、LED が点滅したり、エラーの際には知らせてくれたり、親機の Arduino からの信号線を表示しているだけだけれど、ちゃんと電源きてるよね!ってわかるだけでも、まぁ役にたってはいます。

セラロックも手元にあったけれど、こちらは組み込み機器を作るときに使うので、手持ちの水晶発振器を使ったけれど、もちろんセラロックでもOK。この場合には、コンデンサが付いたセラロックを使うと、部品数も2つ減らすことができますね。

たったこれだけだけれど、一応は重要なツールなので、3D プリンターでケースを作ってみることに。

Take-1ではできなかったけど、2回ぐらいやるとぴったりのものができますね。(寸法の取り方が悪いだけだけど)

OpenSCAD で書いたソースと、STL としたものを圧縮してあるので、こちらからどうぞ。

多分、ごく普通の穴あき基板上に作ったので、画像から穴位置等を合わせて作ればそのまま使えると思うよ。

ついでに久しぶりに Illustrator でつくった各端子、LED などのラベルも一緒にどうぞ。

Arduino bootloader writer

※恥ずかしいけど、ソースも全部入ってるよ。

最初は 3D Printer で印刷する際に、文字を掘ってやろうかと思ってやってみたのだが、文字が小さすぎて、無理だったわ。(その痕跡もソースに残ってる)

ということなので、このラベルは、適切な大きさにはさみで切って、薄い両面テープで張り付けてあります。(これで十分)

このラベルがないと、Arduino と接続するときに、どのピンだっけ??なんてことが起こるのでね。

とっても簡単で、ちゃちゃっと作れてしまうから、必要かどうかはさておき、これ、ブレッドボード上の物をずっと使うよりは作ったほうが良いかもよ。

完成したのは、こちら。

Arduino Bootloader Writer

Arduino Bootloader Writer

 

投稿者のプロフィール

minorus
minorus
電子機器が大好きです。
プログラムを書くのをお仕事としていたこともあるので、両方できる PIC や Arduino を使って、いろいろな(役にあんまり立たない)ものを作っています。
実は UNIX 関連のお仕事も長かったので、Raspberry Pi もお手の物なのですけれど、これから触る機会が多くなるのかなぁ。
ボチボチ行きますが、お付き合いください。
若いころの写真なので、現時点では、まだ髪の毛は黒くてありますが、お髭は真っ白になりました。
愛車の国鉄特急カラーのカスタムしたリトルカブで、時々、秋月電子通商の八潮店に出没します。

コメントを残す

最近の投稿

最近のコメント

アーカイブ