010-62105070 EN

常见问题

FAQ

您当前的位置:首页 > 技术服务 > 常见问题

数据发送及缓存区问题

1.问题:RD-EH32-SN发送字符到打印机时,一次可以连续发送多少个字符?这些字符包括命令吗? 2.问题:微打内存为32K,少量数据是不是不判忙,可直接送数就可以?
1.问题:RD-EH32-SN发送字符到打印机时,一次可以连续发送多少个字符?这些字符包括命令吗?

回答:打印机的缓冲区很大可以一次接受24K的数据,包含命令和字符。

2.问题:微打内存为32K,少量数据是不是不判忙,可直接送数就可以?

回答:可以,当一次发送的数据少于缓冲区时,可以不判忙。

3.问题:RD-EH32-V2缓存不大,如何解决?

回答:除非大量连续的打印几十k上百k的图形,缓存大有优势,在不极其特殊的情况下缓存都是够用的

跟缓存的大小没有关系,和处理器对命令的处理能力有关系,处理器的速度快,打印完一行的时间小于接受打印数据一行的时间,所以占用的缓冲区比较小。

51处理数据的速度很慢,打印的速度小于命令传送的速度,这样,为了不耽误主机对其他数据的处理,基本上都是把缓冲区做得大一些,这样,主机发送完打印数据后就可以处理别的任务。

4.问题:256像素*256像素的位图,大概发送给打印机的数据超过8192个字节。经常出现打印死机?

回答:超出打印机缓冲区了,需要分段来发送。

5.问题:我在串口助手上发1b3800cdf5为什么不打印出王字呢

回答:加0d,没有打印出来,因为字符没有满一行。

6.问题:我从我的大程序上截下关于打印机的程序,单独运行,打印正常,但一嵌入到整个大程序中,就会打出来乱码,是何缘故?(大程序中有关打印机的程序我放在程序的起始部分,也就是我把大程序起始部分复制出来形成一个小程序运行,打印正常,但如果运行大程序为何就不正常了 ?

回答:用的C语言吧,软件模拟一下,看看程序是否在正常执行

7.问题:在VB下,我能打印出字符集的20H--80H的字符,从81H开始的字符不能打印出来(空白),请问是何原因?

回答:VB中打印可见字符与不可见字符的方法是不一样的,打印不可见字符的方法:Dim AA(0) As Byte

AA(0) = 200   pirnt(aa(0))

8.问题:你好,我正在用你公司的的款热敏微打。RD-E型。连续打印A~T这20个字母,没问题。如果换成20个字母A,就打出了20个""。请问是什么原因?

回答:程序上在STB后加长延时,硬件上1。换个好一点的电源.

9.问题2:客户反应无法打印出数据的”数”字?

回答: 此类故障是由于客户所使用的编辑器(KELL)的BUG引起的,KELL有个0XFD的BUG,解决方法(1)可以让客户下载KEEL的这个补丁来解决(2)可让客户直接发该汉字的内码。

济宁客户问:

10.问题1:E32-SN出现打印乱码?

回答:经测试程序代码无问题,后经了解客户用的是12M的晶振,让改为11.0592晶振故障解快,些类故障是由于12M的晶振算出的波特率误差太大造成的.。

11.问题:我用程序控制你们公司的热敏打印机打印图形的时候 有的时候打印过程中 突然sel灯灭了停止了打印然后一闪一闪的,有时不知道什么时候 突然就灭了 然后就不动了这个是怎么回事呢?

回答:打印的过程中出现灯闪的是因为接收数据缓冲区满了,打印机给出忙信号,并且灭灯,在打印缓冲不满的时候打印机给出空闲信号灯亮,在这种动态的情况下,打印机的s

el灯就会出现闪烁。可能的问题:缺纸,没有判忙。

12.问题:打印机初始化语句有时好用有时不好用

回答:客户发来一段程序,如下:经分析,该程序是可以正常打印的。分析此问题是有时可以打印有时不可以打印。让客户在程序前增加延时,不要上电就打印,给打印机足够的复位时间。经过今天的回访客户说已经可以打印。

13.问题:荣达微型打印机的条码号为RDTH32SC-8R-940A478,要打印条码是不是得升级程序?

回答:首先与开发部确认TH的打印机可不可以改成条码打印。得到回复是可以打CODE39及EAN13码。于是,问客户打印什么条码,客户说打印EAN13与CODE39码,于是回答客户可以,具体更换让客户与相关商务联系。

客户又要条码指令格式,将“条码指令表.pdf”文件发给客户

客户问条码生成的是唯一的吗?回答是唯一的,只要发的数据不重复。

14.问题:打印机的命令或数据是面向 ASC码的还是 十六进制 十进制的?

回答:命令用什么方式发送都行.如要发送字符数据的话,必须按ASCII码方式发送,例:如想打印”1”这个字符,不能发送数字1给打印机,要发送”1”的ASCII码才行,通过查ASCII码表,可知”1”的ASCII码为十六进制的31H.所以发送一个31再发送一个0D就才可以打印的.

15.问题:你好,这个打印机的控制流程是不是这样的,比如打印汉字的话,先向打印机发送命令ESC 8 N然后再发送打印内容呢??

回答:是的,485是有协议格式的,帧头+数据包+帧尾。打汉字是先发送1B 38 00 再发送汉字的内码,最后加个0D.客户问0D起什么作用。例如,打印一行半的内容,如不发送0D则只会打印出1行内容。另半行不会打出。

16.问题:客户反映说用串口打印机能打印出字母,打印不出来汉字?

回答:经与客户聊天,客户用的是C#编程,在C#中用串发式发送字母可以打印,汉字打印是乱码,如下:PRINT_CHS(“中国/n”);不会打印出“中国”两字,而会打出乱码。

我怀疑是因为C#的汉字编码方式是按UNICODE码编码的,所以打印不出来,于是让客户试以下数据,PRINT(0X1C);PRINT(0X26);PRINT(0XBA);PRINT(0XBA);PRINT(0X0D);

客户试了一下数据,说可以打印出一个“汉”字,说明我们的打印机的汉字库是好用的,C#的汉字编码方式不是内码方式,于是让客户查一下C#的相关转换函数,将字串发送转成内码方式发送。

17.问题:RD-T16微打能用PC来打印吗?

回答:可以,经与客户了解,客户用的是并口打印机,于是,告诉客户买个并口的延长线就可以用电脑来打印了。软件上得需做一个打印机驱动软件。客户说有说明书上有驱动,我与客户说驱动不适用于这个打印机,此打印机由于分辨率低,用驱动打印效果很差。客户问如何打印,由于客户以前用单片机打印,于是告诉客户在PC上与在单片机上用法是一样的,写程序。

18.问题:串口工具里怎么发送命令?

回答:连好打印机,将串口助手的参数设置成与打印机一样的参数,按照说明书输入你想测试的指令,选中十六进制,点击发送就可以了。

19.问题:EH32-SN的打印机用串口助手发送还是不打印?

回答:先前已教过客户串口助手的使用,已排除串口助手不会用的问题,怀疑是缺纸引起不打印,让客户看一下打印机的指示灯是否处理长亮状态,客户说不是长亮的。于是让客户将纸上好,打印正常。

20.问题:客户问485如何控制打印机?

回答:首先,问客户用的是否为485接口的打印机,客户说不是.问他那如何连接的,他说是用485-232转换器进行连接的,于是告诉客户,这样连接的话,与232的方式驱动打印机是一样的,只是电平为485了.

21.问题:客户问10进制的数据如何发送给打印机?

回答:首先,发送的方法为(1)将一个十进制数据通用数学方法(整除,取余)分别取为位数来,如123,分别取出1,2,3.(2)将取出的位数分别加上0X30即得到相应的ASCII码.(3)将加上0X30后的数据发送给打印机.
Copyright © 2017~2019 北京荣达创新科技有限公司 All rights reserved   网站建设:网势科技   京ICP备17040619号