안녕하세요
vb6로 기계제어하는 프로그램을 만들고있는데요, 초보라서 잘모르는 부분이 있습니다.
기계특성상 타이머가 많이 들어가야하는데
타이머가 늘어날수록 프로그램 속도가 너무 느려지네요..수치값을 계속 주고받아야하는데
한군데서오는게 아니라 여기저기서 날라오는 값이라 타이머가 많을수밖에 없는데..
이럴때 어떻게 해결할수있을까요??
자세히 말씀드리자면
rsr232통신을 할때
Private Sub timScan_Timer()
On Error Resume Next
comMK120s.InBufferCount = 0
comMK120s.OutBufferCount = 0
'P000과 M000의 데이터를 1BYTE단위로 읽어온다.
OutData = Chr(&H5) & "00RSS0406%PW00406%PW00506%PW00606%PW007" & Chr(&H4)
comMK120s.Output = OutData
'시간지연
Call Delay(0.1) '받은데이터를 InpData에 문자열로 저장한다.
'리턴문자열 형태
InpData = comMK120s.Input
end sub
이런코드로 하는데요
보시면 comMK120s.Output = OutData로 rs232송신신호를 보내고 약 0.1초 뒤에 수신신호를 받아야하는데
프로그램상에 수치값을 실시간으로 주고받는 타이머(0.01초간격)가 이거 말고도 많이 있어서
0.1초 딜레이를 주게되면 다른 타이머들도 영향을 받아서 프로그램이 느려지네요..
다른타이머에 영향안주면서 다중 rs232통신을 원할하게 할 수 있는 방법이 뭐가있을까요??