Private
Sub
Form1_Load(sender
As
Object
, e
As
EventArgs)
Handles
MyBase
.Load
TextESC = Chr(13) &
" "
& Chr(10)
Dim
Portnames
As
String
() = System.IO.Ports.SerialPort.GetPortNames
If
Portnames
Is
Nothing
Then
MsgBox(
"Žádné COM porty."
)
Me
.Close()
End
If
cboPort.Items.AddRange(Portnames)
cboPort.Text = Portnames(0)
With
serM
If
.IsOpen
Then
.Close()
.BaudRate = 9600
.Parity = IO.Ports.Parity.Even
.DataBits = 7
.StopBits = 1
.ReadTimeout = 1000
.PortName = cboPort.Text
End
With
End
Sub
Private
Sub
cmdCti_Click(sender
As
Object
, e
As
EventArgs)
Handles
cmdCti.Click
lblO.Text = CtiData(
"IN_PV_3"
)
End
Sub
Private
Sub
cmdStart_Click(sender
As
Object
, e
As
EventArgs)
Handles
cmdStart.Click
serM.PortName = cboPort.Text
Prikaz(
"START_4"
)
Prikaz(
"OUT_SP_4"
&
" "
& Trim(txtOtacky.Text))
End
Sub
Private
Sub
cmdStop_Click(sender
As
Object
, e
As
EventArgs)
Handles
cmdStop.Click
serM.PortName = cboPort.Text
Prikaz(
"STOP_4"
)
End
Sub
Private
Sub
Prikaz(TextPrikazu
As
String
)
With
serM
If
Not
.IsOpen
Then
.Open()
.Write(TextPrikazu & TextESC)
End
With
serM.Close()
End
Sub
Function
CtiData(TextPrikazu
As
String
)
As
String
Dim
returnStr
As
String
=
""
Try
With
serM
If
Not
.IsOpen
Then
.Open()
.DiscardInBuffer()
.Write(TextPrikazu & TextESC)
End
With
Do
Dim
Incoming
As
String
= serM.ReadChar()
If
Incoming
Is
Nothing
Then
Exit
Do
Else
returnStr &= Incoming
End
If
Loop
Catch
ex
As
TimeoutException
returnStr =
"ErrTimeout"
Finally
If
serM IsNot
Nothing
Then
serM.Close()
End
Try
Return
returnStr
End
Function