【发布时间】:2022-11-02 19:32:50
【问题描述】:
我正在尝试使用 Visual Studio 2017 的串行端口从远程终端读取字符串,只要字符串不包含字符 19,它就可以正常工作。由于某种原因,字符串中字符 19 的任何实例都会被忽略。我尝试了 1552 和 28591 编码,并使用 ReadExisting 和 Read (to byte array) 函数读取端口,VS 函数总是丢失或忽略字符 19。如果速度问题没有成功,我尝试了不同的波特率。如果我使用 RealTerm 而不是 VS 来捕获串行数据,则每次都会显示包含字符 19 的任何实例的完整字符串。有谁知道发生了什么?我的端口设置目前如下:
SerialPort1.PortName = "COM" & CStr(NumericUpDown9.Value)
SerialPort1.BaudRate = 57600
SerialPort1.Encoding = System.Text.Encoding.GetEncoding(1252)
SerialPort1.Parity = IO.Ports.Parity.None
SerialPort1.StopBits = IO.Ports.StopBits.One
SerialPort1.DataBits = 8
因此,如上所述,我尝试了所有我能想到的波特率、编码和读取方法的组合,并且在接收到的数据中从未看到字符 19。
【问题讨论】:
标签: visual-studio-2017 serial-port