VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 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処理ばかり行っているのが問題なのでしょうか?
信号を読み込む前に必ず初期処理も行うようにしています。


どのようにすればよいでしょうか。
よろしくお願いします。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -