スキップしてメイン コンテンツに移動

Fastbootの再ビルド

アセンブラで書かれてるコードを、AVRStudioで再ビルドした。結果はこんな感じ。
VMのWINxpでやったので、DOS窓の画面だ。よく読むと解るが、BPSを変えても追従する。512B以内のコードで動いてるブートローダーとして見れば立派。
こっちの方が良いんじゃないか?と密かに思う。
4800BPS以下での通信出来るからAVR-CDCが使える可能性が有る。同じTiny85を使って、通信と、実行のアプリを個々に実行出来る可能性が有る訳だ。(これは結構助かるかも)
上の実行例は、FDTIを使ってる。その前に、PICでやったのだが、接続が安定しなかったのだ。mega8u2でもたぶん大丈夫なんだろう。

tiny45のAVR-CDCも今試したが接続出来た。(転送出来るかはなんとも・・まだです)

optibootで散々悩んだのから考えれば、ビルドから、3−4時間で状況が見えたから割と簡単だと思う。

ブートローダー部は、コマンドプロンプト仕様のが提供されてる。WIN版が、COM6までしか行かないのはちょっと気になってる。MAC/WIN版には、元々そうゆう順番は無いから関係無い。(個人的に言えば、OSが悪い・・が、それで済ます訳にもいかんだろうな)

その問題をクリアすれば、何らかの、ラッパーを噛ませれば、Arduinoから転送出来るはずだ。ちょっとアプリを開発するといい事が有りそうだ。Realbasicで書けそうなら、作ると思う。

どっちみち、圧縮して送ってるとも思えないし。プロトコルが公開されてるから、PC側のアプリは開発出来るし。そんなにコマンドが多くは無いので、Avrdudeに処理させるのも可能だと思う。
一応パスワードロックも有るらしいし・・
初戦は、パソコン通信のレベルの話しだから、ターミナル一個書く程度の知識があれば問題無いだろう。(凄いのじゃなくて、通信出来れば言いレベルのターミナルなら、VBや、Realbasicなら一瞬で書けるもんだ、特に表示の必要がほとんど無い訳だから・・簡単では無いかと思ってる。)

逆に、その中間アプリに、ArduinoのTEMPを監視させて、変更されたら送るかどうか聞くような構造も有りだろうと思うし。
コンパイルしたら、自動転送するってのも有りではと思ってる。

この程度の、アプリなら、私は、2・3日有れば、実用レベルまでは持って行けるから・・作っちゃった方が速そうな気がしてる。

optibootより簡単に見通しが立った。


MACでの結果

=================================================
|             BOOTLOADER, Target: V2.1          |
=================================================
COM dev  : /dev/cu.usbserial-A6008Snk
Baudrate : 4800
Program  : RST2313T.hex
-------------------------------------------------
Waiting for device... Press CTRL+C to exit. -
...Connected!
Bootloader    : V2.1
File "devices.txt" not found!
Target        : 1E930B (?)
Buffer        :     64 Bytes
Size available:   7678 Bytes

CRC enabled and OK.
Reading RST2313T.hex... File read.
Highest address in hex file: 0x00111 (273 Bytes)
Writing program memory...
Programming "RST2313T.hex": 00000 - 00111 SUCCESS

CRC: o.k.
Elapsed time: 1.724 seconds
...starting application

やった完璧・・全然転送はFTDIでやりました。容量小さいから、4800BPSでも遅くないし・・
で調子に乗ってAVR-CDCでもやったけど、やっぱりOK
ベリファイも問題無く通る!

例のResetを拡張してる、AVR-CDCも実用として動いてる!(完璧じゃん)・・つまりオートリセットが効いてる!!!(Arduinoの乗りだね)

=================================================
|             BOOTLOADER, Target: V2.1          |
=================================================
COM dev  : /dev/cu.usbmodem3d21
Baudrate : 4800
Verify   : kyorituAVRWRT.hex
-------------------------------------------------
Waiting for device... Press CTRL+C to exit. /
...Connected!
Bootloader    : V2.1
File "devices.txt" not found!
Target        : 1E930B (?)
Buffer        :     64 Bytes
Size available:   7678 Bytes

CRC enabled and OK.
Reading kyorituAVRWRT.hex... File read.
Highest address in hex file: 0x007FF (2047 Bytes)
Verifying program memory...
Verify kyorituAVRWRT.hex: 00000 - 007FF SUCCESS

CRC: o.k.
Elapsed time: 4.865 seconds
...starting application

これがAVR-CDCで送ったもんのベリファイ・・転送に5秒かかった。
2KBで5秒だから、フルに送ると、4倍弱で、18秒くらいかかるはず。
この構成じゃあ当たり前とも言えるから気にしない。

=================================================
|             BOOTLOADER, Target: V2.1          |
=================================================
COM dev  : /dev/cu.usbserial-A6008Snk
Baudrate : 115200
Program  : kyorituAVRWRT.hex
-------------------------------------------------
Waiting for device... Press CTRL+C to exit. \
...Connected!
Bootloader    : V2.1
File "devices.txt" not found!
Target        : 1E930B (?)
Buffer        :     64 Bytes
Size available:   7678 Bytes

CRC enabled and OK.
Reading kyorituAVRWRT.hex... File read.
Highest address in hex file: 0x007FF (2047 Bytes)
Writing program memory...
Programming "kyorituAVRWRT.hex": 00000 - 007FF SUCCESS

CRC: o.k.
Elapsed time: 2.162 seconds
...starting application

FTDIに変更して、最高速まで上げるとこんな感じ。
 ベリファイはこんな感じ
Verifying program memory...
Verify kyorituAVRWRT.hex: 00000 - 007FF SUCCESS

CRC: o.k.
Elapsed time: 1.604 seconds
...starting application

速度をこんなに上げても所詮、これくらいしか速くはならないのだ。



と言う事で見通しが立っちゃったけどーーー

Tiny85を共同購入してくれる人には、コンパイル済みのブートーローダーごとあげるよ!
正月すぎまでには、GUIアプリも作って配ります。(いかが?)

ちなみに、Arduino IDEのはき出した、HEXで動くのは、ISPで実験済み・・そっちのコアの有りかとかもね。

ついでに言うと、全く同じ構成で、秋月で@90円のTiny2313ももちろん動きます。ただし、残1.5KBですけど・・
8Mhzと、1MHzでビルド済みです。
ビルドは、AVRStudioだけで出来るし、tiny861と言う、秋月の最新のTinyも使えるし、容量に問題無ければ(Ardunoじゃ無理って言う意味)tiny13まで使えちゃいます。


次は、PB5を使えるようにしてみます!(夢のI/O 6Pinで、高電圧書き込みしないで、アプリ書き換え可能って言う奴ね!!)

マジでこれ面白すぎ!


コメント

このブログの人気の投稿

楽天 不正利用の顛末

楽天から届いたポイントメール 事の起こりはこのメールからだった・ 「へえ、俺楽天に、1500ポイントばかり有るけど、これって、1500円って事?」とTwitter仲間に話して、「そうだよ、ずいぶん買い物したねー」と言われて気付いた・・私は少なくともここ2年以上、楽天なんか使って無い! パスワードさえ本人が忘れてるような楽天のポイントが増えるのはおかしい。 パスワードをリセットして、初めて、「楽天ポイントの確認」なんかに入ってみた。 「えーっとたしか5年くらい前にVoIPの部品買った記憶はある」 確かにそれは存在したただし、合計1万円にも満たない・・ 「楽天って豪気だなー、ポイント一割もくれるのかー」と思ったが、全部を確認すると・・全くいわれの無い買い物がそこに有った。 何この14万のオーディオらしき物って! 僕は実際、楽天にポイントが有る事さえすっかり忘れていたし、どーでも良い会社だった。 これは何・・楽天に登録されてる僕のカードはこの時点で確実に失効してるので、僕のカード支払いでは無いし、こんな請求が来た事は無い。 2011/6/30 知人に聞くと、「楽天の店って、ノルマ高いから良く有る」との事・・こうやって、ほとんど休止してるアカウント悪用してる可能性が高いのだ。 こんなのが横行してたら、楽天の売り上げ高なんか、イカサマでいくらでも作れる事になる。 そしてまず、楽天のヘルプから苦情を投稿し、頭に来たので、三木谷氏のツイッターに送信した。 https://twitter.com/#!/hmiKitani Twitterの方が早く 楽天市場CS @ RakutenIchibaCS と名乗るとこから・・ 「 楽天市場お客様窓口担当です。この度はご心配をおかけいたしまして申し訳ございません。現在のところ、弊社から情報が漏洩したという事実はございませんが、お客様の現状を確認し、別途サポート担当より連絡をさせていただきます。今しばらくお待ち下さい。」 と来て 「なんで、公式のメールの方は帰って来ないのかと返信したら」 楽天市場CS  @ RakutenIchibaCS 「楽天市場お客様窓口担当です。この度はサポートセンターからの回答が遅れ、申し訳ございません。先ほど、ご質問の件に関しまして返信をいたしましたので今一度ご

計画停電が来ました。

色々やろうとしてた割には間に合わず・・ MacBookは余裕で生きてました。PocketWifiを探したんですが見つからす・・テーブルスタンドが、LEDの電池共用だったので、真っ暗ににもなりませんでしたが・・ 暗くてなんかやる気も出ないので、寝床でひっくり返って、MacBook動かしてました。 LEDスタンドが、外部USBバッテリーで余裕で、保ってくれたのも有り・・(それが切れてもまだ内蔵が単四電池3本がある) もう一個か二個くらい、照明用のLEDが有れば耐えられそう。 そんなのも有って、定電流回路ちょっと作ろうかと資料漁ったらいいのがあった。 これ 。 一ヶ月位続くって言うから秋月から、3WのLEDを数発買うかなーー とりあえず、家に転がってた、バイクのバッテリーと、MacBookの電源、携帯電話用ポータブル電源とかで、とうぶん毎日1回3時間程度点灯すればいいのかーー 理想的には、LED位なら、スーパーキャパシタが理想ですよねーー PEKE PROJECTは、とりあえず、1週間ほど、休止して、ATtiny85のブートローダーを作り・・Arduinoベースで、停電認識、通電時PWMでの充電機能、LEDの、省エネPWM点灯とかを、ちょっと研究しとこうと思ってます。

秋月の低ハイト、ピンソケット

最初どうかなーー抜けやすかったら嫌だなあと思ったが、さすがにそうならない努力してあるらしく、パチンと言う感じではまる。長いソケットが、刺さる感じなのにこれは、はまる感じなのだ。 ソケットはともかくピン側は結構扱いに困る・・このままブレッドボーボードには刺さらない。丸ピンにも刺さらないから、相手に出来るのは、専用のソケットだけになる。 ただ、いいなあと思ってるのは、これをISPにすると、パチンとはまる事と、ピン側の高さが制限されて、AVRや、PICの基板に無骨に突っ立っていた、ISPコネクタのハイト下げられる。 低ピン→ブレッドボード × 低ピン→標準ピンソケット × 低ソケット→低ピン ○ (ピンはこれ以外の組み合わせを確認できていない) 低ソケット→標準ピン ○ 低ソケット→細ピン ?? 低ソケット→丸ピン × と言う関係なので、ISPには使える。古いISPコネクタと併用出来るから、ソケットにはいいのだ・(はみ出るけど) ISPのハイトが下がると、基板全体が薄くなる可能性が、SMDとかにある。・・薄くするためにDIP ICをソケット無しで、直接半田付けしちゃう私なんかも・・このハイトは助かる。