VEGA VEGASCAN 850 VEGA-ASCII signal output Manuel d'utilisation

Page 18

Advertising
background image

18

Sortie signal VEGA-ASCII VEGASCAN 850

Exemple de programme pour la requête VEGASCAN 850

Attribute VB_Name = "ASCDEMO"
Attribute VB_Creatable = False
Attribute VB_Exposed = False
'-------------------------------------------
' ASCDEMO.FRM
' Copyright (c) 1999 VEGA
' by Gros Thoms
'-------------------------------------------
Option Explicit
' Speicher fuer den Empfang
Dim ReceiveBuffer As String
' Fehlerzaehler
Dim InAction As Integer
' Speicher fuer die Werte und den Status
Dim Status(255) As Integer
Dim PLS(255) As Long

' Start und Ende
Dim StartIndex As Integer
Dim LenIndex As Integer

Private Sub Ende_Click()
' Programm beenden
Unload Me
End Sub

Private Sub Form_Load()
Dim i As Integer
' Speicher initialisieren
For i = 1 To 255
Status(i) = False
PLS(i) = 0
Next i
' Fehlerzaehler initialisieren
InAction = 0
' Bereich einstellen
StartIndex = 1
LenIndex = 30
' Werte anzeigen
DisplayValues
End Sub

Private Sub Form_Unload(Cancel As Integer)
' Timer stoppen
Timer.Enabled = False
' Serielle Schnittstelle schliessen.
If MSComm.PortOpen = True Then
MSComm.PortOpen = False
End If
End Sub

Private Sub MSComm_OnComm()
Dim InString As String
' ? Wurden characters empfangen
If MSComm.CommEvent = comEvReceive Then
' Anzeige für Kommunikation
If Led.FillColor = Me.BackColor Then
Led.FillColor = RGB(0, 255, 0)
Else

Led.FillColor = Me.BackColor
End If
' Prüfen, ob Daten vorhanden sind.
Do While MSComm.InBufferCount > 0
' Fehlerzaehler auf 1 Sec
InAction = 10
' Daten lesen.
Call DecodeFrame(MSComm.Input)
Loop
End If
End Sub

Private Sub Run_Click()
' ? Start or Stop
If Run.Tag = "0" Then
' ? Schnittstelle geoeffnet
If MSComm.PortOpen = True Then
' -> schliessen
MSComm.PortOpen = False
End If

' COM1 einsetzen.
MSComm.CommPort = 1
' 9600 Baud, keine Paritaet, 8 Datenbits und 1
Stopbit
MSComm.Settings = "9600,N,8,1"
' Schnittstelle oeffnen.
MSComm.PortOpen = True
' Timer starten
Timer.Enabled = True
If MSComm.PortOpen Then
' Button umschalten
Run.Caption = "&Stop"
Run.Tag = "1"
End If
Else
' ? Schnittstelle geoeffnet
If MSComm.PortOpen = True Then
' -> schliessen
MSComm.PortOpen = False
End If
' Timer ausschalten
Timer.Enabled = False
' Button umschalten
Run.Caption = "&Start"
Run.Tag = "0"
End If
End Sub

Private Sub Timer_Timer()
If InAction = 0 Then
' Speicher loeschen
ReceiveBuffer = ""
' Starus loeschen
ClearValues
' Ausgabe der Anfrage
MSComm.Output = "%" + Format(StartIndex,
"000") + "L" + Format$(LenIndex, "000") + Chr$(13)
Else
' Fehlerzaehler benutzen

Advertising