[
板情報
|
カテゴリランキング
]
したらばTOP
■掲示板に戻る■
全部
1-100
最新50
|
メール
| |
VB2005でDelay(Wait)タイマーを作るには
1
:
こじら
:2010/03/15(月) 22:29:04
こんばんは。RS232Cではお世話になりました。おかげ様で送受信
できるようになりました。ありがとうございました。
次に起こった問題なんですが、現在のRS232Cの通信はTX,RX端子のみ
でおこなっているので、PCからの送信時、相手のバッファオーバーフロー
が分かりません。
しかし、バッファサイズは分かっているので、それを見越した
送信データ数とWaitタイマーで現在はしのいでみようと考えて
います。しかし、VB6の時のようにタイマーがうまく動きません。
Form_Load
Timer1.Interval = 1000
Timer1.Enable = False
:
:
Loadのエンド
Dim Acount as integer
Dim TimerCount as integer
:
送信処理
ACount = 2
For i as integer=0 To X
送信関数(data(i)) 'data配列に送信したいデータを設定
TimerCount = 0
Timer1.Enable =True
Do while Acount>TimerCount
(空)
Loop
Timer1.Enable =False
Next
:
Private Sub Timer_Tick 〜
TimerCount = TimerCount+1
end Sub
というようにしているのですが、Do While文で帰ってこなくなります
処理がないことがだめなのかと、この文の中に仮演算 a=a+TimerCountとしても
かえってこなくなりました。
ちなみに、VB6の時につかっていたプログラムで動いていたのですが
正しい書き方かどうか知らず動いたので使っていました。
ネットとかで調べると、VB2005などではマルチタスク処理にすべき
とありましたが、Waitをどのように改造すればよいのでしょうか。
題目とことなるのですが、ICのレジスタアクセスを行うのに
Classプロパティを使用すると良い(質問14)と以前アドバイス頂いた
のですが、例えば512アドレス(レジスタ)あれば、512個のプロパティー
を作る必要があるのでしょうか?
1つのプロパティーを何とか512個のインスタンス化処理みたいな
ことでうまくできないでしょうか。
プロパティーの中身を替えた時など、全てのプロパティー記述
を直すのが一苦労なので、なにかうまい方法あれば教えていただけ
ないでしょうか
よろしくお願いします
2
:
igoten
:2010/03/16(火) 10:52:53
プログラムの構成が良いか悪いかは提示されたコードが
部分的なので判りませんが、Do while Acountに関しては
このループの中に
Application.DoEvents()
を入れて見て下さい。
新着レスの表示
名前:
E-mail
(省略可)
:
※書き込む際の注意事項は
こちら
※画像アップローダーは
こちら
(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板