2012-12-14 46 views
1

我正在成功打印到Bixolon SPP-R200移动蓝牙打印机。从移动蓝牙打印机请求电池状态(ESC/POS)

我现在想询问打印机当前的电池电量。基于该BIXOLON命令手册,以下命令要做到这一点:

enter image description here

我能够成功地发送数据和从打印机中读取数据(所以这不是问题的一部分,尽我所能看到)。我的问题是理解上面给出的命令:

  1. 是否有一个特别的原因,直接写入fn和m的值,然后再定义fn和m的值?在前面的命令中,它的做法与此不同:不是将简单数字写入格式,而是使用变量并稍后在范围中进行定义。
  2. 我正确地假设打印机的4字节长的响应?

我的第二个问题是ESC = N(选择外围设备)的命令:

enter image description here

  1. 我的打印机没有显示,这是一个简单的ESC/POS蓝牙打印机。另一方面,我有一台智能手机(运行Android,因此我的代码是Java),它将这些命令发送到打印机。该命令的目的是将数据发送到打印机内的不同接口(显示器,打印单元本身等)?
  2. 如果我在问题1结尾的假设是正确的,那么我想我必须通过n = 2,因为打印机电池命令特别说:“当ESC禁用打印机时,此命令有效= n
  3. 如何在发送电池命令和评估响应后得到”恢复正常“,以便我可以继续打印到打印机?它会像写入ESC = 1(这将再次启用打印机)一样简单吗?

在此先感谢,并请让我知道是否还有其他问题。

+0

如果你得到了答案,请在这里更新'谢谢' –

+0

但是我已经暂时搁置了,但如果我找到它,我会发布它:) – AgentKnopf

回答

1

我的打印机没有显示,它是一个简单的ESC/POS蓝牙打印机。在 另一端我有一个智能手机(运行Android,因此我的代码是在Java中为 ),它将这些命令发送到打印机。该命令的 点是否将数据发送到打印机 (显示器,打印单元本身等)内的不同接口?

此命令的要点是确定您感兴趣的设备的电池状态。您的假设是正确的。因此,对于你ESC/POS N = 1应足以

如果我的问题一个结束的假设是正确的,那么我想 我不得不通过N = 2,因为打印机电池命令 具体说:“此命令是有效的,当打印机禁用ESC = n时, ”

该指令没有意义。我相信ESC指向我们需要数据的外设。

如何在发送电池命令和 评估响应后得到“恢复正常”,以便我可以继续打印到打印机? 它会像写入ESC = 1一样简单(这将启用 打印机)?

这是一个信息相关的命令,我的理解是它不应该打扰打印机的功能。在收到电池状态时,您可以执行正常的打印活动。

+0

谢谢很多回复,我会检查这一点,并接受你的答案,如果我能像这样工作:)否则我会更新我的问题与更多的细节。 – AgentKnopf