1

.NET でシリアル経由で Eftpos Hypercom T4220 に情報を送信するアプリケーションを作成しようとしています。

コンソールテストアプリケーションで、シリアルポートを使用して情報を送信し、まったく応答を取得しようとしましたが、役に立ちませんでした-

_port = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
_port.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);
_port.ErrorReceived += new SerialErrorReceivedEventHandler(port_ErrorReceived);
_port.Handshake = Handshake.None;
_port.Encoding = Encoding.ASCII;
_port.Open();
_port.Write("test");

ハンドラーでメッセージを受信しませんでした。バイトの送信も試みました。ポートの上記の構成には、モデルのドキュメントが付属していました。

ドキュメントには、開始コード (0x02)、メッセージ、終了コード (0x03) を送信する必要があることも記載されています。

以前にこれらで運が良かった人はいますか?

4

2 に答える 2

0

HexString をどのようにバイトに変換していますか? _port.Write() 関数の前にそれを行う必要があります!!

于 2012-05-16T05:42:18.330 に答える
0

さらに、ほとんどのマシンがこれらの情報を必要とするため、シリアルマシンに送信するオフセットとバイトの長さも定義する必要があります。

于 2012-05-16T05:47:04.333 に答える