« USBのためのWin32プログラミング再入門 | トップページ | AVRのためのPIC再入門 »

2006年9月26日 (火)

AVRのためのPIC再入門

PICでAVRライタを作る11

先週は16F648A-AVRライタをavrdudeに対応させるという事をやっ
ていた。ことの始まりは

ひとりぶろぐ

moyashjさんのブログで、Mac OSXでAVRプログラム開発環境を
整える記事。実のところ、このライタはそのままのavrdude5.1では
動作しない。少しばかり手直しする必要がある。

まず、avrdude-5.1のソースを入手する。"stk500v2.c"というファイル
がある筈なので、このファイルの567行目と1098行目の

"page_size = 256 "の部分を
"page_size = 128"に変更する。

そしてビルド。それと、PIC 16F648A側のプログラムも密かに更新
してあるので、これをPICプログラマで書き込む。

ソースとHEXファイル ダウンロード

これでavrdudeから使うことができる(と思う)。

ちなみに、私が試したcygwin1.5.21-1の環境でビルドすると、
"gettimeofday"という関数が重複していると怒られるので、
avrdude側のこの関数の定義と宣言をコメントアウトする必要が
あった。

このライタに興味を持ち、且つavrdudeで使いたいという奇特な
方のために(いないと思いますが)一応記しておこうと思う。

ということで、senshuさんmoyashiさんお世話様でした。

|

« USBのためのWin32プログラミング再入門 | トップページ | AVRのためのPIC再入門 »

コメント

丁寧なフォローをありがとうございます。

ところで、本日?AVRstudioのβ版(Build497)が公開されました。

これに伴い、stk500 のファームも更新され、マイナーバージョンが
10 に更新されました。毎回警告をもらうのもいやな感じでしたので、
AVRISP.asm の以下の行を変更し、ビルドして生成された HEX ファ
イルで PIC のファームを更新したところ、警告をもらうこともなく
なりました。

#define SW_MINOR 0x07

#define SW_MINOR 0x0a

また、avrdude で上手く書き込めない件は、S2313 で確認しました。
Morosan さんの修正した avrdude.exe では OK でした。

私は AVR-wiki の cvs 版を使っていたので、avrdude.exe を
avrdude51.exe と名前を変え、併用することにしました。なお、
avrdude.conf は c:\bin\avrdude.conf を読みに行くようですから、
併用してもソフト的には混乱は起きません。(人間は混乱するかもし
れませんが)

結構、頻繁に AVRISP のファームが更新されるようです。これはあ
る種のプロテクトに近い感じですね。(これだけ面倒見ているのだ
から、製品版を購入したほうが良いよ、といった感じ?)

投稿: senshu | 2006年9月27日 (水) 17時24分

情報ありがとうございます。

まあ、ATMEL側も製品の向上のため努めている訳で、
勝手に互換ライタを作っている限り、この様な事態は
致しかたないでしょう。
私もこのライタのダウンロードファイルの差し替えを
行った回数は、今回で10回目になります。

また、何かあればよろしくお願い致します。

投稿: Morosan | 2006年10月 1日 (日) 12時47分

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/180469/12052104

この記事へのトラックバック一覧です: AVRのためのPIC再入門:

« USBのためのWin32プログラミング再入門 | トップページ | AVRのためのPIC再入門 »