HAMLOG開発室は、HAMLOGに関連したプログラム開発(C、パスカル、VB言語等、又はDLL)についての
専用BBSです。プログラム言語に関する投稿以外は通常のHAMLOG相談室に投稿して下さい。
HAMLOG開発室BBS

 TalkHamlog を使っていただいている方の近況ですが、ローカ
ル局のお手伝いで Hamlogから QSLカード印刷を行うようになり、
よりハムライフを楽しまれている様です。どんな小さなことでも、
人様のお役に立て、喜んでいただけるのを見ると、本当に嬉しい、
オーバーですが、自分がこの世に存在する意義を感じるものです
ね。

 さて、このGWに自分に課した課題は、リグコントロールです。
といっても、VC++ による、簡単な RS-232C 制御です。前出のユー
ザーに、HFにて、より HAM の楽しみを味わっていただこうと、これ
また世話付きローカル局が、「操作パラメータが少なくも機能十分」
ということで、FT-900(なかなか目的に適っていて見る目がある)
をヤフオクで代理落札してくださいました。しかし、このリグは音
声合成のオプションは無く、実際に使っていただいても、まさしく
「大海に放り出された小船」で、リグの現在の状態がわからない、
いわゆる、介添なくしては使えない状況です。

 しかし、このリグは、CAT対応ですので、これでリグのステータス
を取得、TalkHamlog に発声させれば、かなりの改善が期待できます。
この発想はすぐに浮かんだのですが、もし実現しなかった場合の、
USB-シリアルI/Fの投資を考えると申し訳ない、と二の足を踏んでま
した。しかし、また某ローカル局が、「FT-900の HAMLOG 同期」を
画策して、I/F を入手していただいたので、挑戦してみることにし
ました。

 この休み、丸2日かかりました(のめり込む、楽しい時間、hi)。

----------
・機能1
 PC の PFキー押下で、その時のリグの VFOモード、周波数、
その他周波数ロック、スプリットモード…などを、音声で
読み上げる。

・機能2
 別の PFキー押下で、「パニック対応」、可能な限りのパラ
メーターをリセットする。
----------

 機能1により、暗闇に行燈を灯し、機能2により、リグを触る
(リカバーできない)恐怖感から開放されることから、意義は大
きいと思います。しかしながら今後、その局に実際に頻繁に使って
頂けて、結果、HFにのめりこんで貰うことができれば、初めて成就
したといえ、心配&楽しみです。

 PG は引き続き、VC++ Ver6.0 です。ここに見えられるOMが
おっしゃる様に、「機能は限定されるが、非常に軽く、コンパクト、
重たいランタイム(フレームワーク)」を必要としない所は、いいで
すね。DLLを除いた、EXEファイルの大きさは、何と 40KB です。

 VC++ による Windows RC-232C制御PG については、ノウハウが
I-Net に少ないながらも公開されていたので助かりましたが、最後
まで私を悩ませた壁を以下に紹介します。

1. CreateFile() の第1引数
 INIテキストファイルに、"COM3" などと書いておき、PG起動時に
これを文字列に読み込み、そのポインタを渡してやるコーディング
をしたのですが、どうしてもシリアルポートがオープンしてくれない。
デバッガで見ると、メモリアクセスバイオレーション。かなり考えた
結果、判ったことは、第1引数の型が、LPCTSTR であること。これに
対し、私は、char[] を渡していたことが原因。コンパイルエラー
にしてちょうだいよ、マッタク…。

2. ReadFile() の第2引数(受信バッファ)
 読み込みはできたものの、文字が化ける。これはデバッガを使って
ひと思案、コードに、0x80以上のものが混じっていることから判明。
つまり、受信バッファの型を、これまた char[] で受けていたことが
原因でした。これを、unsigned char[] で受けてやることで解決。

 …要は、私がまだまだ、DWORD、LPVOID、LPDWORD、LPCTSTRといった
Windows 独自の型、また、UNICODE に対する知識、技術が欠落して
いることが判明し、自己嫌悪です(まだまだ奥は深いぞ…いつまで
たっても VC++ は難しい)。

 以上、Tips ご紹介でした。hi

2012/05/02(Wed) 10:09:58  [No.275]


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)
- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)
Call 名前 ※必須
文字色
Eメール
タイトル sage
URL
メッセージ 手動改行 強制改行 図表モード
メッセージには上記と同じURLを書き込まないで下さい
画像File  (130kBまで)
暗証キー (英数字で8文字以内)
投稿キー (投稿時 投稿キー を入力してください)
プレビュー