使用javascript或php在linux上进行串口通信

时间:2014-03-09 22:57:05

标签: php linux serial-port low-level

我正在建立一个在线POS并试图与Epson tm-t88iv热敏打印机建立低级别的通信。没有直接打印文件,只有十六进制或ascii可以以特定格式发送到硬件以供打印。所有这些都是在linux环境(ubuntu 13.10和12.04)中完成的。

现在的问题是我无法与打印机建立通信。我已经尝试过使用Jzebra和其他java到javascript库但没有运气,所以我改为更熟悉的环境并尝试使用带有状态检查代码的php序列类但没有任何反应。

include 'src/PhpSerial.php';

// Let's start the class
$serial = new PhpSerial;

$serial->deviceSet("/dev/ttyUSB0");
$serial->confBaudRate(38400);
$serial->confParity("none");
$serial->confCharacterLength(8);
$serial->confStopBits(1);
$serial->confFlowControl("none");

$serial->deviceOpen();

$serial->sendMessage("\x02\x81\x1B\x02\x01\x03\x5C\x5C");

$read = $serial->readPort();

var_dump($read);

返回一个空字符串。此外,打印机没有接收十六进制(它设置为十六进制转储状态,以打印它接收的每个十六进制)。

即使是编码或硬件问题,我也不确定。我尝试安装cutecom与串口通话,但我也没有得到任何答案。我也试过直接从shell做一些stty命令,但也没有得到任何东西。

如果有人可以请说明为什么会这样,或者他有类似的经历,那就太棒了。

谢谢!

p.d:我正在使用多产的pl2303系列连接到USB电缆,并且据我所知正确安装。

0 个答案:

没有答案