Распределение данных с последовательного порта - VB
Формулировка задачи:
Имеется такой код в VB6
Всё работает, при клике на кнопку порт открывается , данные отображаются в Label1.Caption и обновляются каждую секунду.
Символы с COM порта поступают в ASCII кодировке.
Примерные символы отображаются в виде.
02M0####
и
03M0####
Где (#) - Случайное число которое постоянно меняется с самого порта. Все символы находятся в одном буфере и могут меняться местами, 02M0#### или 03M0####, один из них может запаздывать и дублироваться.
Нужно сделать так, чтобы 02M0#### отображался именно в Label1.Caption ,
а 03M0#### отображался в Label2.Caption
Пробовал обойтись операторами:
Так же пробовал с Buffer$. Ничего не вышло, в обоих случаях буфер проигнорировал все условия
и продолжает выводить что и без условий.
Помогите пожалуйста решить проблему. Спасибо!
Листинг программы
- Private Sub Command1_Click()
- MSComm1.CommPort = 2
- MSComm1.Settings = "9600,n,8,1"
- MSComm1.InputLen = 0
- MSComm1.OutBufferSize = 0
- MSComm1.InBufferSize = 0
- MSComm1.PortOpen = True
- Timer1.Enabled = True
- End Sub
- Private Sub Timer1_Timer()
- Do
- DoEvents
- Buffer$ = Buffer$ & MSComm1.Input
- Loop Until InStr(Buffer$, vbCr)
- Label1.Caption = Buffer$
- End Sub
Листинг программы
- If Label1.Caption <= "02M02999" Then
- Label1.Caption = Label1.Caption
- Else
- Label1.Caption = "Error"
- End If
- If Label1.Caption >= "02M00000" Then
- Label1.Caption = Label1.Caption
- Else
- Label1.Caption = "Error"
- End If
- If Label2.Caption <= "03M02999" Then
- Label2.Caption = Label2.Caption
- Else
- Label1.Caption = "Error"
- End If
- If Label2.Caption >= "03M00000" Then
- Label2.Caption = Label2.Caption
- Else
- Label2.Caption = "Error"
- End If
Решение задачи: «Распределение данных с последовательного порта»
textual
Листинг программы
- If Left(Buffer$, 4)="02M0" Then
- Label1.Caption = Buffer$
- Label2.Caption = "Error"
- ElseIf Left(Buffer$, 4)="03M0" Then
- Label2.Caption = Buffer$
- Label1.Caption = "Error"
- Else
- Label1.Caption = "Error"
- Label2.Caption = "Error"
- End If
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д