如何对依码士喷码机9020进行打印控制啊? 现手上有一台依码士9020的喷码机,想要控制喷码机打印数字,厂家只提供了一个RS232串口协议说明书,没有驱动,哪位兄弟做过的能不能提供个例子啊!非常感谢!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 直接通过RS232发送协议信号就可以了啊他们给的协力说明里边,有一些东西你可以设置成常量来用,比如const SMS_Print='!!signal.trig.main'; //触发打印 SMS_Conn='!!signal.trig.config!-1'; //连接 SMS_Lock='!!system.lock!1'; //锁定 SMS_Unlock='!!system.lock!0'; //解锁需要你预先在他们的打印机控制端设置你要打印的变量,然后发送你的打印内容,比如:SMS_Data:= '!!v!1"'+Edit1.Text+'"'; 谢谢笑霸王的解答,因为是第一次做串口通讯,对RS232协议不了解,看协议说明书里面的例子是把发给串口的数据分成4个部分:IdentificationLenthDataChecksum这里面Identification,Lenth,,Data,Checksum是RS232协议的一部分吗?Lenth是指整个字节的长度吗,checksum校验码是怎么产生的?为什么例子中是把数据一次性发送的,而我查其他串口通讯资料的时候又说是8个字节发送的? 刚查了下,我们以前用的是4020的喷码打印机,是给板材上喷码用的。主要看看他的协议里边发送数据和执行打印的部分。你说的那4个部分,应该是打印机自带的协议。比如我上边说的,SMS_Data:= '!!v!1"'+Edit1.Text+'"';这个是发送数据的,其中的!!v!,表示是发送的数据,后边跟1是变量位置,然后后边跟你需要发送打印的数据。所有数据发送完了后,再发送'!!signal.trig.main'来触发打印。 哦,是这样子的啊,我这个手册里面倒是没有说明这个,看例子中应该是先发送一个ENQ 05h 给打印机然后打印机还回一个 06h ACK,然后再把打印信息发送过去,可能是打印机型号不同,我再看看协议手册! 这个很简单的啊,一般是根据他们的协议进行触发的,每一个动作都有相对应的协议的,IdentificationLenthDataChecksum,这四个我猜的是声明,长度,数据,校验,应该很简单的,你再仔细看看 手册看了几遍发现没找到checksum的计算方法 对,我也刚做完datamax的条码机,感觉条码机的协议更加详细,技术支持也更完善,不像他这样,协议描述很简单 请教数据库开发经验丰富的高手凭证界面修改设计怎么实现比较好? 屏幕截图 如何截取带Alpha通道的窗体 感谢95鸟人提供的dent.slip文件,谢谢 ADODataSet用于查询问题 StringGrid中如何使文字居中? 简单问题,在线等…… 求救于有以下经验的高手指教,(系统从新改用数据库的问题); 关于多窗体的菜鸟级问题 关于TList的Free的问题? 高手救救我! 操作INI文件。需要密码问题。 Delphi如何不安装客户端连接DB2
SMS_Print='!!signal.trig.main'; //触发打印
SMS_Conn='!!signal.trig.config!-1'; //连接
SMS_Lock='!!system.lock!1'; //锁定
SMS_Unlock='!!system.lock!0'; //解锁
需要你预先在他们的打印机控制端设置你要打印的变量,然后发送你的打印内容,比如:SMS_Data:= '!!v!1"'+Edit1.Text+'"';
Identification
Lenth
Data
Checksum
这里面Identification,Lenth,,Data,Checksum是RS232协议的一部分吗?Lenth是指整个字节的长度吗,checksum校验码是怎么产生的?为什么例子中是把数据一次性发送的,而我查其他串口通讯资料的时候又说是8个字节发送的?
然后打印机还回一个 06h ACK,然后再把打印信息发送过去,可能是打印机型号不同,我再看看协议手册!
Lenth
Data
Checksum,
这四个我猜的是声明,长度,数据,校验,应该很简单的,你再仔细看看