Ошибка считывания шестнадцатеричного значения из последовательного порта
уважаемый друг,
Я пишу вам,чтобы попытаться решить проблему, я посылаю некоторое шестнадцатеричное значение с помощью последовательного порта на внешнее устройство.
Он отвечает на мой запрос статуса , но вместо того, чтобы показать значение 0x01 в середине пакета данных, он показывает 0x00.
Я использую простой vb.net winform на VS2012.
Вот код который я использую:
Imports System Imports System.IO Imports System.IO.Ports Imports System.Text Imports System.Threading Public Class Form1 Dim value As Byte Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click SerialPort1.Encoding = System.Text.Encoding.GetEncoding(1252) SerialPort1.Open() End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click SerialPort1.Close() End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click Dim array(6) As Byte array(0) = &H3 array(1) = &H1 array(2) = &H1 array(3) = &HA4 array(4) = &HA5 array(5) = &HB2 SerialPort1.Write(array, 0, array.Length) Label1.Text = "" For i = 0 To 10 value = SerialPort1.ReadByte() Label1.Text += value.ToString("x2") + " " Next End Sub
Я получаю это :
03 01 01 A4 A5 B2 00 00 03 00 FC
Но как из технических данных устройства я должен получить:
03 01 01 A4 A5 B2 01 00 03 00 FC
Используя сниффер порта, я вижу, что устройство правильно отвечает со значением 0x01.
У кого-то есть идея, почему из моего приложения я читаю байт 6 как 0x00, а не 0x01?
Проблема, по-видимому, только со значением 0x00 и 0x01 ....другие значения считываются правильно(я полагаю).
Заранее спасибо
Маурицио
Что я уже пробовал:
Используя последовательный порт com sniffer, полученные байты являются правильными.
Richard MacCutchan
Невозможно угадать, что может пойти не так. Вам нужно использовать свой отладчик, чтобы захватить больше информации.
Richard Deeming
Репост
Вы уже опубликовали это на форуме VB:
Проблема получения шестнадцатеричного значения в последовательный порт - визуальный основные дискуссионные форумы[^]
Richard MacCutchan
Хорошо подмечено. Я знал, что видел это где-то раньше, но количество сообщений на домашней странице OP равно нулю.
Member 10201357
Извините, я должен был разместить его не в том разделе.