📄 fserialport.class
字号:
' Gambas class file'PRIVATE Sport AS SerialPort'PUBLIC SUB Form_Open()' Sport=NEW SerialPort AS "Sport"'ENDPUBLIC SUB Form_Close() IF Sport.Status=Net.Active THEN CLOSE SportENDPUBLIC SUB Check_Status() ChkDSR.Value=Sport.DSR ChkDTR.Value=Sport.DTR ChkCTS.Value=Sport.CTS ChkRTS.Value=Sport.RTS ChkDCD.Value=Sport.DCD ChkRNG.Value=Sport.RNG ENDPUBLIC SUB Button1_Click() IF Sport.Status=Net.Active THEN CLOSE Sport Button1.Text="Open" ELSE ' Line parameters Sport.PortName=TxtPort.Text Sport.Speed=CmbSpeed.Text Sport.Parity=CmbParity.Index Sport.DataBits=CmbData.Text Sport.StopBits=CmbStop.Text ' keep DTR on Sport.FlowControl=ComboBox1.Index Sport.Open() Check_Status() TextArea1.Text="Port Opened : " & Sport.PortName & " Settings : " &Sport.Speed & "," & Sport.Parity & "," & Sport.DataBits & "," &Sport.StopBits & Chr(13) & Chr(10) Button1.Text="Close" END IF ENDPUBLIC SUB SPort_Read() DIM s AS String READ #Sport,s,Lof(Sport) TextArea1.Text=TextArea1.Text & sENDPUBLIC SUB SPort_RNGChange(iVal AS Boolean) ChkRng.Value=iValENDPUBLIC SUB SPort_DTRChange(iVal AS Boolean) ChkDTR.Value=iValENDPUBLIC SUB SPort_DSRChange(iVal AS Boolean) ChkDSR.Value=iValENDPUBLIC SUB SPort_CTSChange(iVal AS Boolean) ChkCTS.Value=iValENDPUBLIC SUB SPort_DCDChange(iVal AS Boolean) ChkDCD.Value=iValENDPUBLIC SUB SPort_RTSChange(iVal AS Boolean) ChkRTS.Value=iValENDPUBLIC SUB Button2_Click() IF Sport.Status = Net.Inactive THEN Message ("Open port first!") ELSE 'WRITE #Sport,TxtSend.Text & Chr(13) & Chr(10), txtSend.Length + 2 PRINT #Sport,txtSend.Text; Chr$(13); Chr$(10); END IFENDPUBLIC SUB ChkDTR_Click() Sport.DTR=ChkDTR.Value Check_StatusENDPUBLIC SUB ChkRTS_Click() Sport.RTS=ChkRTS.Value Check_StatusENDPUBLIC SUB ComboBox1_Click() Sport.FlowControl=ComboBox1.IndexENDPUBLIC SUB Form_Open() cmbSpeed.Index = cmbSpeed.Find("19200")END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -