スキータイム計測機 開発日誌

とある大学生の競技スキー用タイム計測機の開発日誌です。とかいいつつ関係ないことも書きます。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

VC++でCOMポート通信 その2

電子工作する合間に休憩みたいにしてピアノを弾くのですが、最近はずっと久石譲の「ENCORE」にハマッてます。
ジブリの曲も入ってるのですが、そこいらのジブリ譜面とは全く違います。
何が違うのかっていうと、いろんな会社がだしてるジブリ譜面は、その会社がアレンジしてしまっているわけですが、
ENCOREは久石譲自身が書いた譜面だからです。
ENCOREはCDも出ているので、それと一緒に買うといいと思います。
久石譲といえば「SUMMER」が有名かと思いますが、これも色々なところから楽譜が出ています。
楽譜屋でいろんなSUMMERを見比べてみましたが、やっぱりENCOREのSUMMERが一番です。



今日は一日雨だったので、外に出ることもなく、スキータイマーのゴール側のケース、ケーブル製作をしていました。

昨日VC++でCOMポート開放の記事を書いたので、今日は通信について。
環境はVisual C++ 2008です。
といっても、ポートが開いてさえしまえば、あとは簡単。

・データを送るとき
port.Write("送りたいデータ");

・データを受け取るとき
受け取り方にも色々ありますが、そこは公式ページに色々載ってます。
一文字ずつ、とか1バイトずつ、とか。
今回は「特定の文字まで受信する」機能を持つReadToを使いました。

予定としては、スキータイマーからPC側へ
「"(ゼッケンNo.)z(タイム)t"」
のようにデータを送ろうと思っているので、まずport.Writeで「データくれ」のコマンドを送信した直後、String型の配列を用意し、

data[0] = port.ReadTo("z");
data[1] = port.ReadTo("t");

のようにしてデータを読み取っています。
データが配列に入ったら、それをリストビュー(エクスプローラの詳細と同じ)に入れ、表示させます。

listView->Items->Add( gcnew ListViewItem( data ));

これだけです。
リストビューについて色々ググッていたのですが、ライブラリをリンクしろとかなんかをインクルードしろとかあったので、色々試したのですがダメで、結局全部消してやったらうまくいきました。

これで一応「計測機からのデータをゼッケン、タイムと分けて表示する」ところまでは行けそうです。
あとはタイム順ソートとか保存とかさえできれば満足。それは分からんのでこれから。
スポンサーサイト
次のページ

FC2Ad

まとめ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。