User`s guide
August 2012L010185
19
Visual Basic Direct Mode Programming Examples
Example 1: This Example is for Axis=0, and Profi le=1
DimConst DefaultTimeout As Single = 0.5
frmMain.MSComm1.Output = “@0A1_100000” & Chr$(13) ‘SetAcceleration
Pause DefaultTimeout
frmMain.MSComm1.Output = “@0B1_1000” & Chr$(13) ‘Set Base Speed
Pause DefaultTimeout
frmMain.MSComm1.Output = “@0M1_4000” & Chr$(13) ‘Set Maximum Speed
Pause DefaultTimeout
frmMain.MSComm1.Output = “@0N1_500” & Chr$(13) ‘Set Index Number
Pause DefaultTimeout
frmMain.MSComm1.Output = “@0T1_100” & Chr$(13) ‘Set Complete Time
Pause DefaultTimeout
frmMain.MSComm1.Output = “@0+” & Chr$(13) ‘Set Direction CW
Pause DefaultTimeout
frmMain.MSComm1.Output = “@0G1” & Chr$(13) ‘Start the Index
Pause DefaultTimeout
Example 2: This Example receives the error code and Version Number from Axis3
DimConst DefaultTimeout As Single = 0.5
frmMain.MSComm1.Output = “@3!” & Chr$(13)
Pause ShortTimeOut
MsgBox RecieveAscii()
frmMain.MSComm1.Output = “@3$” & Chr$(13)
Pause ShortTimeOut
MsgBox RecieveAscii()
Function ReceiveAscii() As String
‘wait for the incoming data to get to the buffer
Dim BeginTime as Single
Dim A As Integer
Dim B As Integer
BeginTime = Timer
While Main.MSComm1. InBufferCount = 0
DoEvents
If Timer - BeginTime > 0.1 Then GoTo ExitRoutine1
Wend
A = 0: B = Main.MSComm1.InBufferCount
While A <> B
A = Main.MSComm1.InBufferCount
Pause 0.02 ‘ Fixed time value
B = Main.MSComm1.InBufferCount
Wend
ReceiveAscii = Main.MSComm1.Input
Exit Function