2010年8月12日 星期四

BS-300KS控制命令

1、换行
  LPRINT CHR$(10)
2. 换页
  LPRINT CHR$(12)
3、PK模式驱动钱箱指令
  ESC | r F9 M n1 n2
  M =0 代表一个钱箱 n代表脉冲宽度 n1 =40--50 之间
  M =1 代表两个钱箱 n2 =120--150之间
  QBASIC下编程举例
  LPRINT CHR$(27);"|";"r";CHR$(249);CHR$(0); CHR$(50);CHR$(150)

3、POS模式驱动钱箱指令
  ESC p M n1 n2
  M =0 代表一个钱箱 n代表脉冲宽度 n1 =40--50 之间
  M =1 代表两个钱箱 n2 =120--150之间
  QBASIC下编程举例
  LPRINT CHR$(27);CHR$(112);CHR$ (0);CHR$ (50);CHR$(200)

4、 BS300K可同时打开两个钱箱

  当接 2、4 时钱箱1打开 ,接4、5时钱箱2打开

5、条码打印指令
  ASC II: Fs p n s h m k d1 d2… dk
  十进制码: 28 80 n s h m k d1 d2…dk
  十六进制码: 1C 50 n s h m k d1 d2…dk

***** 八种常用类型条码命令*****
(1) EAN--13在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(1);CHR$(2);CHR$(2);CHR$(3) CHR$(12);"012345678901"
(2) EAN--8在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(2);CHR$(2);CHR$(2);CHR$(3);CHR$(7);" 4718290"
(3) UPC--A在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(3);CHR$(2);CHR$(2);CHR$(3);CHR$(11);"012345678900"
(4) UPC--E在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(4);CHR$(2);CHR$(2);CHR$(3);CHR$(7);"0143121"
(5) CODE--39在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(5);CHR$(2);CHR$(2);CHR$(3);CHR$(8);"*C0DE39*"
(6) INTERLEAVED--25在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(6);CHR$(2);CHR$(3);CHR$(3);CHR$(4);"3214"
(7) CODABAR在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(7);CHR$(2);CHR$(2);CHR$(3);CHR$(5);"D123D"
(8) CODE--128在QBASIC下编程举例
LPRINT CHR$(28);CHR$(80);CHR$(8);CHR$(2);CHR$(2);CHR$(3);CHR$(5);CHR$(137);"C128"


6、屏蔽换页功能指令
   LPRINT CHR$(27);"|";"w"; CHR$(36);CHR$(1);
   1为屏蔽换页
   0为恢复换页功能

7.切纸刀在PK模式下切纸
   ESC ;"|r"; CHR$(&H0FA)
   在QBASIC下编程例子
   10 FOR i=1 TO 10
   20 FOR j=1 TO 10
   30 LPRINT "0123456789"
   35 NEX J
   40 LPRINT
   41 LPRINT
   42 LPRINT
   43 LPRINT
   44 LPRINT
   45 LPRINT
   46 LPRINT
   47 LPRINT
   50 LPRINT CHR$(27); "|r"; CHR$(&HFA)
   60 NEXT
   70 END


8.切纸刀在POS模式下切纸
   ESC ;"i"; CHR$(0)
   在QBASIC下编程例子
   10 FOR i=1 TO 10
   20 FOR j=1 TO 10
   30 LPRINT "0123456789"
   35 NEX J
   40 LPRINT
   41 LPRINT
   42 LPRINT
   43 LPRINT
   44 LPRINT
   45 LPRINT
   46 LPRINT
   47 LPRINT
   50 LPRINT CHR$(27); "i"; CHR$(0)
   60 NEXT 0全切
   70 END 1半切


9 黑标检测功能
   ESC C n n代表两黑标距离
   10 LPRINT CHR$(27);"C";CHR$(60);
   确实找黑标范围要大于两黑标距离
   20 LPRINT CHR$(27);"|r";CHR$(&HF5);
   寻找到黑标位置
   30 LPRINT "123456" 找到黑标就打印
   40 LPRINT "abcdef"
   50 LPRINT "efghj"

10 设定单向或双向打印
   LPRINT CHR$(27);CHR$(85); CHR$(n);
   n=1 单向打印
   n=0 双向打印

11 设定在windows下开钱箱功能
   LPRINT CHR$(27);"|w";CHR$(45);CHR$(n);
   n=0 FF走纸命令时钱箱无效
   n=1 钱箱1打开
   n=2 钱箱2打开



12、切纸功能的设定、(包括入纸高度。页长。切纸位)
   10 LPRINT CHR$(27);"|w";CHR$(1);CHR$(0); 开机初始入纸的位置,高8位
   20 LPRINT CHR$(27);"|w";CHR$(2);CHR$(0); 开机初始入纸的位置,低8位
   60 LPRINT CHR$(27);"|w";CHR$(36);CHR$(0); 设定换页功能有效
   70 LPRINT CHR$(27);"|w";CHR$(40);CHR$(0); 换页时切纸功能无效
   80 LPRINT CHR$(27);"|w";CHR$(38);CHR$(0) 页长调整,低8位
   90 LPRINT CHR$(27);"|w";CHR$(39);CHR$(0);页长调整,高8位
   110 LPRINT CHR$(27);"|w";CHR$(41);CHR$(0);切纸时往上走纸距离的低8位
   120 LPRINT CHR$(27);"|w";CHR$(42);CHR$(0);切纸时往上走纸距离的低8位
   130 END



13、BS300K中可通过接口对以下各单元进行设置,格式如下:(以QBASIC为例)
   10 LPRINT CHR$(27);"|W";CHR$(n1);CHR$(n2)
   20 END
   N1表示单元位置,N2表示对单元写入值

14 N1单元位置
   1 开机初始入纸的位置,高8位,出厂值=02H
   2 开机初始入纸的位置,低8位,出厂值=5CH,即从检测纸传感器位置走纸025CH/432 英 寸。
   32 =AAH则允许条码打印,=0则不打(出厂=0)。
   36 =1,换页(FF)命令无效,=0有效(=0)。
   38 页长调整,低8位。
   39 页长调整,高8位 ,若该单元bit7=1,则为负调整;bit7=0,为正向调整,值为(39)(38) AND 7FFFH。
   40 换页时的切纸功能,=0,无效;=1,有效(=0)。
   41 切纸时往上走纸距离的高8位,(=01H)。
   42 切纸时往上走纸距离的低8位,(=0DCH),单位=1/432英寸。
   43 切纸时往下退纸距离的高8位,(=01H)。
   44 切纸时往下退纸距离的高8位,(=0DCH),单位=1/432英寸。
   如要使用切纸功能,需要先使(36)=0,(40)=1,然后对(41),(42),(43),(44)的值做相应调整。

15。注意事项:
   当打印机检测到错误时,会用面板的LED来提示错误类型:
   1 ONLINE灯闪,打印头电机部分出错。
   2 READY灯闪,EEPROM读/写出错。
   3 PAPER灯闪,RAM出错 。
   4 ONLINE+READY灯闪,打印头温度过高,或热敏电阻出错。
   5 ONLINE+PAPER灯闪,切纸刀不能复位。

16。设定汉字打印、下线、1/4角汉字、半角汉字、倍宽、倍宽汉字

位   “1”  “0”
------------------------------------------
7   下划线   取消
6         取消
5   下标汉字  取消
4  选择1/4角汉字 取消
3  倍高汉字   取消
2  倍宽汉字   取消
1  半角汉字   取消
0  纵向打印  横向打印

沒有留言:

張貼留言