将十六进制代码发送到串行端口

时间:2015-02-25 14:44:19

标签: c#

我正在使用posiflex客户显示器,我正在尝试清除显示屏。我已经阅读了用户手册,我找到了PST命令模式,它使用十六进制代码。我不知道如何将这些十六进制代码传递给串口来清除我的显示器。从手册中,我需要发送以下十六进制数字: 14 0E

我尝试使用以下代码发送这些字节,但我不知道如何同时传递两个字节。

SerialPort sp = new SerialPort();

    sp.PortName = "COM6";
    sp.BaudRate = 9600;
    sp.Parity = Parity.None;
    sp.DataBits = 8;
    sp.StopBits = StopBits.One;
    sp.Open();
   byte[] bytestosend = new byte[1] { 0x0E };

    sp.Write(bytestosend, 0, 1);
    sp.Close();
    sp.Dispose();
    sp = null;

当我使用此代码时,不执行任何操作(不清除显示)。

1 个答案:

答案 0 :(得分:10)

要发送多个字节,只需使用逗号分隔字节。你应该有这样的东西:

sp.PortName = "COM6";
sp.BaudRate = 9600;
sp.Parity = Parity.None;
sp.DataBits = 8;
sp.StopBits = StopBits.One;
sp.Open();
byte[] bytestosend = { 0x14, 0x0E };

sp.Write(bytestosend, 0, bytestosend.Length);
sp.Close();
sp.Dispose();
sp = null;