パソコンのROM設定ソフト
パソコンのROM設定ソフト
パソコンでROMのデータを作り、AVRで作った代わりのTD4のROMに転送することにしたわけですが、PC側のソフトの制作。
HSPで作ろうと思っていました。 以前使ってみたっきりで最近使ってなかった。。。
これを使って作ってみました。
その前にHSPの紹介
HSPは オニタマさんが フリーソフトとして提供されている有名なプログラミング言語です。
往年のN88BASICに似たかんじの言語で、割とすんなり覚えやすいけれど機能はかなりのことができ、ゲーム、3Dソフトもとかなりのことができます。高機能のソフトが作れるということで現在、非常に多くのユーザに支持されていて、いろんな方の解説ページが数多くネットでもあり、フリーで始めやすい、取っつきやすいです。
視覚的に、画面で動くなどの綺麗なソフトが割と簡単につくれます。サンプルデモみるとなかなか驚くほどの機能をつくれるのが見れます。
いろんな人が作ったプラグインのソフトもあり、広がっている様子。少数が使えなかったのがバージョンが上がりどんどんと進化して、Ver3.2になり ブロックの組み合わせでもプログラミング的なことが出来るよなLEGOの制御風にもさらに改良されているようです。
とりあえず、数値を転送してAVRのEEPROMに書き込むソフトを作りました。
データを入力して転送して書き込む、読み出して表示するというだけなのですがHSPの方の命令を調べるのに手間取りました。
調べていくと、HSPでは直接2進数や16進数の計算もできる!
2進数←→10進数変換関数とかあるみたいなので調べて試していると、実装するまでにヘッダ取り込みとかで手間取り、最後はなんかバージョンの違いで動かなかったりで、そんなこんなで、エラーが出るたびHSPの機能を調べる・・結局自分でやった方がよさそう。
転送や画面コントロールを調べるのは地味で進んだ気がしませんが、機能が出来て画面を作っているとTD4らしくなってきた(といえるだろうか。。。)
PC送受信ソフト
HSPにCOM通信関数があるので、それを使い画面に入力した数値を転送、受信するのを試作。
入力の数値をボタンの押下げを受けて転送する程度なのですが、やっぱしHSPに慣れてないと、割と簡単にできるはずの、入力数値を取り込む だけでHSPの基礎からいろいろ調べないといけなかった。。。その分、かなりの方がコントロールなどの解説をしてくれていていますが。。。
ヘリで4合目までの例えなんですが、思ってたより大変だった。熱気球で火を絶やさないように飛んできたという感じですね。
HSPは、慣れてないのでいろんなところにハマってしまいます。ユーザー定義関数もマニュアル例と同じで走らせてもなんでだかエラーで、関数自体の形さえ作れなかったりして、
こういうあたりまえなところが出来ないと疲れ倍増 こんなことに次々悩まされ。。。
ユーザは非常に多くて、検索すると、丁寧に説明してくれているHPが数多くありすぐ探せるのは非常にありがたいですが、簡単そうに見えて、普通の命令調べたり、ちょっと複雑なことやろうとすると慣れてなければ面倒そうです HSP
あちこちで手間取りました。
簡単なソフトでかなり書きやすいと思っていたのですが、大きくなるに従い、全部グローバル変数って、どこで変数名がダブルか落ち着かないです。
TD4近代的ROMソフト
もう少し肉付けをして、気分だけでもTD4風にと操作画面をスイッチ風に改良しています。
SWの感じをラジオボタンを並べて それらしくしてみました。
出来上がると プログラムのチマチマ感がボタンで味わえて、
いじくっているとTD4の入り口に来た!
って感じはありますね^^!
ボタンをマウスでチマチマとH,Lにしていく・・
ボタン状態を読み込んで数値にしてみる・・
こんなことやってると、なぜかちょっと楽しい^^
読み出すと変換されてAVRに書き込み、読み出してボタンが変わるので遊んでいると TD4を作っているって感じがしてきます。
EEPROMへ16バイト分の読み書き転送をします。正確に読み書きできるところまでできた。
通信のときのポートとか転送データ形式とかボタンコントロールを読み込んだりすんなり出来ないところもありましたが、ここまでできたという感じがでました。
とりあえずは、やっと4合目、AVR TD4近代的ROM部分は動くまでにはできた。
(再度、、4合目とはどの辺かしりません、富士山って何合目まであるんだろう?)
AVRのソフトと、このソフトは安定して問題なく使えそうと思った頃に公開予定です。
ハードルが下がったとはいえ、これを使う人は、、後からTD4を作る人は、、いるだろうか・・・
とはいえ、使えそうな出来にはなりました。
その前にちゃんと最後までできるだろうか。。。
たいした計画なしでここまで飛んで来て、実際に基板に乗せる回路、TD4の使用基板の大きさ、基板配置やその他のことはこれからボチボチと計画していく予定です。
次はいよいよCPU部分というか、実回路ですね。。。
|