serjtag avrdude ATmega328pチップ 秋月AE-ATmega基盤にて、手作りArduino Duemilanove

Arduino Duemilanove(avrカードの製品)
http://ja.wikipedia.org/wiki/Arduino
に乗っかっているFTDI社のUSB-serial converter chip FT-232RL
をつかって、Arduino Duemilanoveの上のATMega328チップのbootloaderを
かきこんでみる、ってお話。



おやくそくにより、実験のプラットフォームはLinux(debian or ubuntu)です。
windowsの環境はもっていないので確認できないです

Duemilanove(3000円弱だったか?) 
http://ja.wikipedia.org/wiki/Arduino
もしくは


もしくは秋月のAE-ATMega board(150円)ボードと
とまっさらのAVR ATMega328Pチップ(250円)+ 部品(1500円グライ)
http://akizukidenshi.com/catalog/g/gP-04399/
があれば、大体準備OKです。

このFTDI社のFT-232RLチップにはBitBangモードってのがあってこれを利用する。
(わたしはよくしらないw OpenSourceではない。ライブラリをFTDI社のサイトからひっぱってくる必要あり)

んで、
秋月通商にて販売している AE-ATMega基盤(150円)とAVRchip(ATMega328P,250円)と
FT232RL(USBシリアル変換モジュール、950円 これにもFT-232RLが乗っている)+細かい部品をそろえれば、
Arduino互換ボードをつくることができます。(総予算2000円弱ぐらいかな?)
のみならず、きがついたら、AVRのライターもできてるじゃん、って2度おいしいはなし。

さて、はじめてみるですよ。
まずは資料あつめから

http://doswa.com/blog/2010/08/24/avrdude-5-10-with-ftdi-bitbang/
avrdude 5.10 bitbang build but (no serjtag patch needed anymore?)
Have to check


http://suz-avr.sblo.jp/article/30760466.html
FT245R/FT232Rでavrdude


http://labs.coffeebot.net/2009/05/ftdi-drivers-avrdude-linux/
段々ターゲットに近くなってきちょる


http://www.geocities.co.jp/arduino_diecimila/bootloader/index.html
http://www.geocities.co.jp/arduino_diecimila/bootloader/index_old.html (CUI操作)
Kimio Kosaka さんのぺーじはここ

CUIにてavrdudeを動かすインストラクションはここ
http://www.geocities.co.jp/arduino_diecimila/bootloader/index_old.html


http://www.nmj.sumomo.ne.jp/suz-avr/serjtag/
より
serjtag-0.3.tar.gz
をDLする (しかし、avrdudeのパッチが 5.3.1だね。古い?)


avrdudeは5.10が今時(3/Feb/2011)での最新

http://download-mirror.savannah.gnu.org/releases/avrdude/

このリンク先にtar ball(avrdude-5.10.tar.gz)とpdfファイル(avrdude-doc-5.10.pdf)があるのでDLしませう。

./configureして、makeして、make install


ftdiのライブラリはここ

http://www.ftdichip.com/Drivers/D2XX.htm

2011-01-10 に
新しいバージョン(1.0.2)がでていますな

2011-07-13現在は1.0.4がでていますね。


(上記の参考は古いバージョン(0.4.16))

最新版をDLして、READMEにしたがって binaryを/usr/local/libとかに
コピーする。


ちょっとよりみち
build-dep

APT HOWTO (Obsolete Documentation)
第 6 章 - ソースパッケージでの作業
6.1 ソースパッケージのダウンロード

フリーソフトウェアの世界では、ソースコードで勉強したり、バグの多いソースを修正するのはよくあることです。このためには、プログラムのソースをダウンロードしなければならないでしょう。APT システムはディストリビューション中の多くのプログラムのソースコードと、そのプログラムを .deb 化するために必要な全ファイルを入手するための、簡単な方法を提供します。

Debian ソースのよくある使い方としては、プログラムの新しいバージョンを適合させる場合などです。例えば、stable ディストリビューションに unstable 中のプログラムを使う場合など。あるパッケージを stable 用にコンパイルするには、そのディストリビューションで利用可能なように依存関係を調整して .deb 化します。

このためには、/etc/apt/sources.list 中の deb-src のエントリが unstable 向けとなっていなければなりません。さらにエントリが 有効 (アンコメント) になっている必要があります。/etc/apt/sources.list ファイル, 第 2.1 節 を 参照してください。

ソースパッケージをダウンロードするには、以下のコマンドを使ってください:

     $ apt-get source packagename

これにより 3 つのファイルがダウンロードされます: .orig.tar.gz, .dsc, .diff.gz です。Debian 専用に作られたパッケージの 場合、3 番目のファイルはダウンロードされず、最初のものもファイル名中に "org" と付きません。

.dsc ファイルは、dpkg-source がソースパッケージを packagename-version のディレクトリに展開するために使われます。ダウンロードされた各ソースパッケージには、.deb パッケージを作るために必要なファイルが含まれている debian/ ディレクトリがあります。

ダウンロードしたパッケージを自動的にビルドするには、次の例のよう に -b をコマンドラインに付加します:

     $ apt-get -b source packagename

ダウンロード時に .deb を作らないのなら、次のようにすることで後から作ることもできます。

     $ dpkg-buildpackage -rfakeroot -uc -b

上記のコマンドは、ダウンロードされたパッケージがあるディレクトリ内で実行してください。

apt-get の source 指定と他の指定とでは違いがあります。 source 指示は、一般ユーザにも実行可能で、特別な root 権限は必要ありません。ファイルは、apt-get source package が実行されたディレクトリにダウンロードされます。
6.2 ソースパッケージのコンパイルに必要なパッケージ

通常、ソースパッケージをコンパイルするには、特定のヘッダや共有ライブラリが存在することが必要です。全 .deb パッケージには、そのコントロールファイル中に 'Build-Depends' というフィールドがあります。これは、そのパッケージをソースからビルドする際に、必要となる追加パッケージが指定しています。

APT はこれらのパッケージダウンロードするのも容易にします。 apt-get build-dep package を実行するだけです。'package' の箇所は、ビルドしたいパッケージの名前です。例えば:

     [root]@[/] # apt-get build-dep gmc
     Reading Package Lists... Done
     Building Dependency Tree... Done
     The following NEW packages will be installed:
       comerr-dev e2fslibs-dev gdk-imlib-dev imlib-progs libgnome-dev libgnorba-dev
       libgpmg1-dev 
     0 packages upgraded, 7 newly installed, 0 to remove and 1  not upgraded.
     Need to get 1069kB of archives. After unpacking 3514kB will be used.
     Do you want to continue? [Y/n]

インストールされるのは、gmc を正確にビルドするために必要なパッケージです。このコマンドは、ビルドされるプログラムのソースパッケージを探さないことに注意してください。したがって、それを入手する のに別途 apt-get source を実行する必要があります。