数ヶ月前からVBを始め、プログラムを組んでいる者です。
VB6.0を使用しています。
I/0ボードを用いてロボットの信号を受け取れるような環境を作りました。
『Do Until~Loop』処理で、信号を監視させているのですが、
プログラムを実行させるとCPU=100%になり、フリーズします。
『Do Until~Loop』処理の代わりになるような処理はないでしょうか?
以下に少し詳しく書き込んでおきますので、
よろしくお願いします。
信号Aは1(ON)と0(OFF)のどちらかの信号を常に出しています。
(タイミングは機械が制御しています)
信号Bも1(ON)と0(OFF)のどちらかの信号を常に出しています。
(タイミングはランダムです)
<目的>
信号Aが1のとき、信号Bの信号を受け取り、
信号Aが0のとき、信号Bの信号は受け取りません。
<アルゴリズム>
(1)信号Aが1になるまで『Do Until~Loop』処理を行う
待機させる
(2)信号Aが0になるまで『Do Until~Loop』処理を行う
その処理の中で、信号Bの信号を常に監視させる
No.1ベストアンサー
- 回答日時:
監視にDo-Loop構文を使っても構いませんがWindowsのメッセージループを止めない工夫をするようにしましょう
メッセージループとは ボタンのクリックやウィンドウの再描画などOSが処理している部分です
ループ中に DoEventsめっそどを適宜実行するようにしてみましょう
たとえば 10回ループを回ったら1回DoEventsを実行するようにするとか
dim nCnt as Integer
nCnt = 0
Do Until 終了条件
監視処理
nCnt = nCnt + 1
if nCnt > 10 then
DoEvents
nCnt = 0
end if
loop
といった具合です
No.2
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- 運転免許・教習所 対面する車用信号機の両隣の歩行者用信号を車用信号の変化予測に使うことは出来ますか? 1 2023/03/12 11:50
- 運転免許・教習所 横断歩道の赤信号を見て、車道が青信号の時点でブレーキをかけて止まる運転はうざいですか? 10 2023/03/07 10:27
- ガラケー・PHS 携帯電話の居場所信号の発信タイミング 3 2022/07/27 14:39
- カスタマイズ(車) スクランブル交差点ではない注意書きがある、交差点で歩行者の信号が全部青になった時。 4 2023/04/16 20:46
- 数学 自動車の平均速度について。 3 2023/05/23 18:18
- 工学 あの 信号処理 デジタル信号 DSP integrated circuits などは、 だれが関わり 1 2022/09/11 17:19
- 運転免許・教習所 黄色信号で止まっても進んでも必ず文句を言われる、どうすればいいですか? 9 2022/05/11 08:43
- 運転免許・教習所 時速60+αから黄色信号で停止線までに止まるって無理じゃありませんか?黄色で止まろうとするのが間違? 15 2023/02/22 20:07
- 宇宙科学・天文学・天気 宇宙人との通信方法を考えました。 8 2022/05/14 15:59
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA kernel32 の意味
-
メッセージボックスのボタン名変更
-
VBSの処理中一旦処理を止めて再...
-
シャットダウン時のExcel強制終...
-
beforecloseの中からの抜け出し方
-
VBSで応答不要のメッセージボッ...
-
Application.ScreenUpdating=Fa...
-
VBA、UserFormを前面に出力して...
-
ACCESS側からEXCELの書式を設定...
-
ダイアログボックスを利用した...
-
vb.net イベントが完全に終了...
-
MFCのView終了時の終了確認
-
VB.NETで数秒間msgboxの...
-
VBA メッセージボックスを自動...
-
VB.NET開発(イベントプロシー...
-
【C#】 あるイベントから別イ...
-
Excel VBA で処理中断(DoEvents...
-
メッセージBOXの「はい」「いい...
-
MFCダイアログの終了判定
-
VB6 コマンドボタン クリック...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBSの処理中一旦処理を止めて再...
-
メッセージボックスのボタン名変更
-
VBA kernel32 の意味
-
ACCESS側からEXCELの書式を設定...
-
VBSで応答不要のメッセージボッ...
-
エクセルVBAでクリップボード内...
-
Application.ScreenUpdating=Fa...
-
Excel VBA で処理中断(DoEvents...
-
VBA メッセージボックスを自動...
-
VBA、UserFormを前面に出力して...
-
【C#】 あるイベントから別イ...
-
ASP.NETでのメッセージ画面を出...
-
Excel VBA 自動的に閉じるMsgBox
-
キーボード入力、マウス操作を...
-
スロットゲームのプログラミング
-
<input type="file">タグで「キ...
-
Excelのワークシートに行を挿入...
-
ボタンが押された事を検知する...
-
VB6 コマンドボタン クリック...
-
Stack around the variable 'xx...
おすすめ情報