如何使用带有 Delphi 10.2 的 TComPort 清除客户显示?
How to clear a customer display using TComPort with Delphi 10.2?
我正在使用来自 Winsoft 的 TComPort
v6.0 连接到我的 COM5
设备,这是来自 Oxhoo 的客户显示器。(Prolific PL2303 USB - 到串行 Com 端口)
我只想在上面显示一些文本,然后在按下按钮时清除整个显示。我已经搜索了一个明确的命令,但它似乎并不像那样工作。
现在我可以使用 Comport1.WriteString()
成功发送文本以显示,但我无法清除显示或显示文本。
此外,发送一长串空格确实可以在视觉上清除显示内容,但下一个将显示的文本将位于随机位置。 (最后一个文本长度 + 添加的空格)。
根据制造商的说法,它应该支持 ESC/POS 命令,但我不知道在我的 Delphi 代码中使用哪些以及如何使用它们。
显示由 2 行 20 个字符组成。
> [][][][][][][][][][][][][][][][][][][][]
> [][][][][][][][][][][][][][][][][][][][]
如何清除显示并重新从第一行开始写入文本?
为了简单地清除显示,我们需要发送 ESC/POS 命令,即:
CLR 0C Clear display screen
-> 十六进制的 0C 转换为十进制的 12。
所以对于 Delphi 就这么简单:
Comport1.WriteLine(#12);
我正在使用来自 Winsoft 的 TComPort
v6.0 连接到我的 COM5
设备,这是来自 Oxhoo 的客户显示器。(Prolific PL2303 USB - 到串行 Com 端口)
我只想在上面显示一些文本,然后在按下按钮时清除整个显示。我已经搜索了一个明确的命令,但它似乎并不像那样工作。
现在我可以使用 Comport1.WriteString()
成功发送文本以显示,但我无法清除显示或显示文本。
此外,发送一长串空格确实可以在视觉上清除显示内容,但下一个将显示的文本将位于随机位置。 (最后一个文本长度 + 添加的空格)。
根据制造商的说法,它应该支持 ESC/POS 命令,但我不知道在我的 Delphi 代码中使用哪些以及如何使用它们。
显示由 2 行 20 个字符组成。
> [][][][][][][][][][][][][][][][][][][][]
> [][][][][][][][][][][][][][][][][][][][]
如何清除显示并重新从第一行开始写入文本?
为了简单地清除显示,我们需要发送 ESC/POS 命令,即:
CLR 0C Clear display screen
-> 十六进制的 0C 转换为十进制的 12。
所以对于 Delphi 就这么简单:
Comport1.WriteLine(#12);