Прием и управление данными последовательных устройств в visual basic
Привет всем!! У меня есть последовательное устройство, которое посылает мне данные со скоростью 38400, и я получаю их вот так "?@D00014C000 000".Я вижу, что данные поступают в ritchtextbox, но то, что я пытаюсь сделать, - это использовать некоторые символы из строки в списке.
Например мне нужны персонажи "14С"появляется в listbox3. Я попытался подстрока и ср. функция, но listbox lidnt работает должным образом и теряет символы или путает их . Вот мой код. Есть какие-нибудь предложения, пожалуйста??
Что я уже пробовал:
<pre> Imports System Imports System.ComponentModel Imports System.Threading Imports System.IO.Ports Public Class frmMain Dim myPort As Array Delegate Sub SetTextCallback(ByVal [text] As String) 'Serial Port Receiving Code Starts Here .... Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived ReceivedText(SerialPort1.ReadExisting()) End Sub 'Serial Port Receiving Code Ends Here .... 'Serial Port Receiving Code(Invoke) Starts Here .... Private Sub ReceivedText(ByVal [text] As String) If Me.rtbReceived.InvokeRequired Then Dim x As New SetTextCallback(AddressOf ReceivedText) Me.Invoke(x, New Object() {(text)}) Else Me.rtbReceived.Text &= [text] Dim fine As String = Mid([text], 7, 3) Dim list As Integer = ListBox3.Items.Add(fine) End If End Sub End Class
Richard MacCutchan
"режим работы lidnt должным образом, и потери персонажей или ввести их в заблуждение"
Что это значит?
Παλαβρατζής Βασίλης
Это означает, что мое устройство отправляет данные со скоростью передачи 38400 БОД, и эти данные до моего кода хранятся правильно, строка за строкой в Richtextbox. То, что я пытаюсь сделать, - это "выудить" из каждой строки несколько символов и поместить их в список. Допустим, из всей строки "?@D00014C000 000" мне нужно 3 символа "14C". Вплоть до моего кода снова, то, что я получаю обратно из строк списка, выглядит примерно так : 14C 14C 14C 00 D00 14C 000..... как путаница данных, которые я просил