2011年1月9日日曜日

この4KBのバージョンなら、DFU出来るかも・・

hexで付属してた分は、8KB有って、DFUできなかったからISPしたのだけど・・DFUブートローダーごとだったのだと思う。
このhexが、DFU出来ちゃえば、ISPは必要無いんで、後でちょっとやってみる。
例の、AE-ATmega改造キットを入れて、完成させてからDFUで済めば、鶏と卵問題は解消してしまう。

つまりーー
DFUローダーは入ってるから、それでこのHEX書き込んで・・しまえばシリアルとして動く。
ISPは必要無い。Arduino本体の、mega328Pの部分は、madoelec氏が、「やろうかどうしようか」って言ってたから、我が儘言ってみる価値は有ります。(あれは入れて送ってもOKだから・・ただし、手間賃と時間は考慮しないと駄目だよ)
そうすると・・今回の0022に含まれてるhexが、DFU出来る物だとしたら・・ほぼ完全にクリアする。
最悪再コンパイルが必要だが・・

Arduino UNOのmega8u2部に、どうやら、バグが有ったらしいから、最新の物に交換する、dfuの仕方が、あちこちに書いてるから、本物のUNOもそうすべきではある。(本物のUNOの場合、裏面のDFU用パッドになんか半田でブリッジさせて、とかややこしい事になるみたいだ)
本物のUNOのmega8u2部を使うには、裏面のイタリアのシチリアの先に有るパッドを接続出来るスイッチみたいなもんがまず必要。

mega8u2用のISP端子のRESETと、GNDを繋ぐ感じのリセットスイッチも必要になる。

裏のDFU用のスイッチなりをGNDに落としながら、RESETすると、DFUモードになる。
この裏の部分、表面実装のスイッチなら付きそうに思うが・・
arduino本家としては、DFUをデフォルトで自由にする気は無かったと言う、デザインだけど、書き換えが必要って事になると、ちょっとキツイかもね。

とりあえず、megaXXu2の開発環境は見通し立ってしまった。

LUFAのライブラリにも、シリアル変換のコードが入ってるので(たぶんGPL)Arduinoのライセンス問題が気になる人は、そこのコード入れれば、とりあえず安心です。

前年に思ったのは、USBtiny MK2(AVRisp V2互換)のコードが、maga8u2に入らなかった事・・
UNOのmega8u2の部分が、AVRisp V2になったら、そりゃ便利だろう。

もうちょっとコードをつめて、USBtiny互換でもいいから、あの部分に、入り、DFUで自由に中身を書き換えられれば・・Arduinoは無敵かも。(MCUの種類に依存しなくなる)
USBtinyとかが、2313とかで記載されてるのを考えれば、2−4KBのISPは可能だろう・・Arduinoが、DFU端子を、DTRに使ってるから、ターゲット用のRESETはそれで流用出来るはずなので、ISPを組み込むのは可能に思える。(そしたら、裏のDFU端子と、m8u2の ISP端子の、7本を引き出しておけば、DFUもISPも出来、インジケーターのLEDも二個付いてる立派なISPが完成するはずだ。)
これが実現すると、本当に、鶏と卵の問題は無くなる、(FTDIから書き込めば元々、それは無いのだが)mega8u2なら、本来、DFUだけ付ければ良かったはずなのに、ISP端子が付いて得宇理由は、FTDIのx3端子と同じく、そうゆう誘いなのかも知れない。

UNOのmega8u2に、手頃なISP組み込めれば、結構国際的な有名人になれるが・・誰かやってみれば?HIDaspxなんか入ると面白いだろうね。
気分的に言えば、シリアルコンバーター部も一緒に入れてくれて、ISP端子にジャンパピンを刺しておけば、シリアルコンバーター、抜いてアダプタ付ければ、ISPなんて言うの作って欲しいな。

0 件のコメント:

コメントを投稿