投稿日 | : 2007/01/20(Sat) 20:22 |
投稿者 | : りっきー |
Eメール | : |
URL | : |
タイトル | : Loop処理とフリーズ |
大変お世話になっています。
数ヶ月前からVBでプログラムを組んでいる者です。
VB6.0を使用しています。
I/0ボードを用いてロボットの信号を受け取れるような環境を作りました。
信号Aは1(ON)と0(OFF)のどちらかの信号を常に出しています。
(タイミングは機械が制御しています)
信号Bも1(ON)と0(OFF)のどちらかの信号を常に出しています。
(タイミングはランダムです)
<目的>
信号Aが1のとき、信号Bの信号を受け取り、
信号Aが0のとき、信号Bの信号は受け取りません。
<アルゴリズム>
@信号Aが1になるまで『Do Until〜Loop』処理を行う
待機させる
A信号Aが0になるまで『Do Until〜Loop』処理を行う
その処理の中で、信号Bの信号を常に監視させる
ロボットを起動させている間、常に上記のことが繰り返されています。
プログラムを実行させるとCPU=100%になり、必ずフリーズしてしまいます。
デバックを行い、F8でプログラムを手動で回したときは、正常に動きます。
Loop処理ばかり行っているのが問題なのでしょうか?
信号を読み込む前に必ず初期処理も行うようにしています。
どのようにすればよいでしょうか。
よろしくお願いします。