一個作ると、Mac/Win/Linuxのアプリが出来ちゃうRealbasicで制作中、ちょいと古いバージョンだが・・それでも2009・・だからいいやね。(さすがに毎年アップデートしてないので)
とりあえず、COMポートの一覧とか引っ張れるか確認したら、簡単だった。
短期的には、コマンドライン行を生成して、自動起動させれば、いいわけだ。これなら、ポート名、転送速度、送るHEXのフルパスを用意すればいいだけなので、、後は何処まで、ノーメンテナンスで動くかだと思う。
まず、基本的に、
絶対関係無いポートをはぶく。
AVR-CDCは、AppleやLinuxはポート名がある程度決まってるから自動的に転送速度を固定する。(4800BPS)
そこまでやってから、オープン可能なポートに片っ端から、確認コードを飛ばして、存在位置を確認すれば、自動設定出来る。
発見した場合、転送速度の上限確認もやってしまうか・・と言うか、あんまり速くしても意味無いので、19800BPS位で決め撃ちでもいいかも。
基本的に、6才の子でも操作出来ないと、私のガイドラインがOK出さないつもりでは有る。(せめて小学校4年生以降位なら使えるようにはしたい)
大人用のカスタマイズは、一段裏にし・・プロ用は、ずーーーーーっと奥に入れる。
こう考えると、ブートローダーの書き込みソフトなんか、ほとんど何もGUIは無い、無いから作るの簡単なのだが・・
この手の物を書くのは、初めてなんだけど、うまくいったら、Avrdudeのフロントエンドも作るかな?例のごとく、フューズ設定が、「内蔵低速:高速、クロックオシュレーター」しか無いような超シンプルな奴が欲しいのだ。
細かい設定は、ファイル名にして、ファイル名に、hoge_hoge.t84.A6.DD.FE.hex って書いておくと自動設定するとか言うのがいいかな・・これで書き込む時も、外部クロックがいるとか、再ISP不能になるとかだと、メッセージを出すようなのが、欲しい。
一度書いたファイルは、同じ場所に、このファイル名に従ったコピーを作るとかだろうね。
ブートローダーの方も、ファイル名に、MCU機種名が必要な仕様にするかも。
誰でも使える、フェイルセーフの方が、プログラマの簡単さより、重要だと思うしねえ・
プロは、不便なら自分でなんとでも出来るからプロなんで、そのためにGUIなんか作る必要さえ無いからね。プロのためにアプリを書く気なんて全くありません。(どうせ文句言われるだけだし)
コメント
コメントを投稿