掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MSCommでの出力を安定化について (ID:122963)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ねろさん何度もありがとうございます。返答の順序はきにしないでください。 >一度MSDNのヘルプでOnComm を調べて見て下さい。 >OnComm イベントはCommEvent プロパティの値が変化すると発生します。 >使用例も良く見ておいて下さいね。 失礼しました。冷静に考えればわかることだったのですが、もうなにが なんだかわからなくなって基本を忘れていました。 >それと『フリーズ』と言うのはどのような意味でしょう、普通フリーズと言うと >アプリが反応しなくなり、再起動する必要が有りますが。 フリーズという表現が誤っていました。平均で20秒ほどたつと値が返って くるので正確には”ビジー状態”というのでしょうか?しかし、固まった あと、値が返ってくるときにはソフトがVB画面の裏側に隠れてしまうという よくわからない現象が起こるので"フリーズ"と表現しました。 >『g』以外に連続でデーターを送ってくるコマンドは無いのですか? ないようです。説明書には"連続して測定する場合には、[Gを送信後、 4倍と受信し、データを処理保存する]を繰り返してください。"とだけ 書いてあります。 >そこで、センサーを動かさなければ、センサーキッドが『g』コマンドを >受け付けてデーターを返すと言うことは、少なくてもこちらのデーター >受け取りプログラムは正常に動作していると思いませんか。 >センサーを動かすと、PICマイコンが忙しくて『g』コマンドを受け付けて >いる暇が無いのでは。 自分もそうだと思います。例として書いていただいたプログラムで言うと Private Sub cmd_Sen_Click()の終わりの部分(①)と、 Private Sub MSComm1_OnComm()の始めの部分(②)に MSComm1.InBufferCountをテキスト出力するように書き加えたところ、 止まるところは(①)で"=0"と出力した後なので、センサからの データが受信できていない状態で止まっているようです。 また、確かに値を受け取ることはできるのでプログラム自体、 間違ってはいないと思います。しかし、他のソフトでは安定した出力を 得ていますので、プログラムでその"PICマイコンが忙しくて『g』 コマンドを受け付けている暇が無い"と思われる状態も回避できるのだと 思っているのですが・・・ ちなみに"他のソフト"というのは http://www.ast-j.com/software/scc.htm です。ソースも有料で公開していますが、ちょっと高くて手が出ません。 このソフトで通信すると"ビジー状態"になることもなく、とても安定した 出力を得られます。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.