| |
Visual-Basic EinsteigerSeltsames Verhalten bei Zeichenkettenoperationen. | | | Autor: ralf33 | Datum: 06.06.20 18:21 |
| Hallo,
ich bin bald am Verzweifeln, ich scheitere an einem ganz simplen Problem.
Über die serielle Schnittstelle lese ich Daten von einem Messgerät ein
und gebe sie erst mal in einer Textbox aus. Das funktioniert auch einwandfrei,
jeder Datensatz wird in einer Zeile dargestellt. Der Wertebereich liegt
zwischen 0 und 1023.
Private Sub Form_Load()
With MSComm1
.CommPort = 1
.Settings = "57600,n,8,1"
.RThreshold = 5
.SThreshold = 1
.InputLen = 0
End With
MSComm1.PortOpen = True
MSComm1.DTREnable = False
End Sub Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comOverrun: MsgBox "Datenverlust!"
Case comRxOver: MsgBox "Datenverlust!"
Case comEvReceive
Spannung_s = MSComm1.Input
Länge = Len(Spannung_s)
Me.Text1 = Me.Text1 + Spannung_s
End Select
End Sub Sie kommen in folgendem Format an:
#5F0; steht für die Null
#5F1023; steht für die 1023
Jetzt möchte ich natürlich den Wert extrahieren, aber das funktioniert einfach nicht. Die gängigen Zeichenkettenoperationen sind mir eigentlich geläufig, aber hier funktioniert nichts.
Es scheitert schon daran, das ich einfach nicht die korrekte Länge ermitteln kann.
Länge = Len(Spannung_s) ergibt bei #5F0; eine 9 und bei #5F1023; eine 8, wobei die 8 ja korrekt wäre.
Was kann das sein, hat jemand einen Tipp?
Eventuell vorhandene Leerzeichen habe ich schon versucht mit RTrim und LTrim zu entfernen, hat nichts gebracht.
Gruß Ralf
Beitrag wurde zuletzt am 06.06.20 um 18:28:18 editiert. | |
Re: Seltsames Verhalten bei Zeichenkettenoperationen. | | | Autor: ralf33 | Datum: 07.06.20 10:55 |
| Hallo Dieter,
es funktioniert jetzt.
Habe den Tipp bekommen, die Steuerzeichen mit:
Spannung_s = Replace(Spannung_s, vbLf, "")
Spannung_s = Replace(Spannung_s, vbCr, "") zu entfernen.
Danke!
Gruß Ralf | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Neu! sevCommand 4.0
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|