Ansteuerung der COM-Schnittstelle

Vorbereiten des Programmes

Um mit einer seriellen Schnittstelle arbeiten zu können, ist es wichtig, die verfügbaren COM-Ports abzufragen (welche sind noch frei, vorhanden, installiert, …)

Es ist klar, dass man auf seinem eigenen Rechner normalerweise wissen sollte, welche COM-Ports frei sind. Will man dann jedoch auf einem anderen Rechner die geschriebene Software verwenden, ist es nicht mehr so klar. Wozu soll man sich die Mühe machen, wenn es auch automatisch gehen kann.
Und dafür werden wir ein kleines Programm schreiben.

Auf einer leeren Form fügen Sie folgende Komponente ein:
Microsoft Comm Control 6.0
Dieses dient zur Ansteuerung der seriellen Schnittstelle.
(Hilfe für das Zufügen von Komponenten finden sie hier:  Hier gehts zum Tipp

Die Form1 werden wir so benennen: Caption: WorkingCOM

Nun plazieren Sie folgende Elemente und stellen gleich die gewünschten Werte ein:
CommandButton: Name: cmdEnd, Caption: Beenden
CommandButton: Name: cmdPortEinlesen, Caption: COM-Ports einlesen
CommandButton: Name: cmdPortÖffnen, Caption: COM-Ports öffnen
CommandButton: Name: cmdPortSchliessen, Caption: COM-Ports schließen
TextBox: Name: txtInfo, Text: „“
ComboBox: Name: Combo1, Text: kein Com-Port eingelesen

Die Form schaut bei mir folgendermaßen aus:

Programmcode:

Im Allgemeinen-Deklerationsteil deklerieren sie bitte folgende Varablen:

Dim PortOK As Boolean
Dim TT As String, LZ As String
Dim PortNr As Integer

PortOK wird uns helfen, die gültigen COM-Port-Nummern in die ComboBox aufzunehmen,
TT bzw. LZ sind ein Text-String bzw. ein zweifacher Return-String (2 x vbCrLf) und
PortNr wird uns die verwendete COM-Port-Nummer liefern.
Alle Werte können von jeder Prozedur in diesem Formular verwendet werden.

Die Form_Load schaut folgendermaßen aus:

Private Sub Form_Load()
LZ = vbCrLf & vbCrLf
PortNr = 0
End Sub

Die PortNr wird am Anfang zur Überprüfung auf „0“ gesetzt. (s. später)

Die cmdEnd_Click schaut folgendermaßen aus:

Private Sub cmdEnd_Click()
End
End Sub