朋友开个粉店,让我做一个POS类管理软件,电脑+收银箱+打印机+软件模式吧,
    以前没有做过与收银箱之类的软件,
    我想问的问题是:平时看到小超市里,收银员,在电脑键盘上按一个回车,那个收银箱就自动在下面打开了,试问,我们的管理软件与这个收银箱是如何的一个接口方法,是如何控制的呢?请各位兄弟赐教?
    

解决方案 »

  1.   

    一般是通过LPT1口控制。
    可用如下方法:procedure TFrmMain.OpenBox;
    var
      Prn: TextFile;
    Begin
      AssignFile(Prn, 'LPT1');
      Rewrite(Prn);
      Write(Prn, CHAR(27)+CHAR(112)+CHAR(0)+CHAR(60)+CHAR(255));
      CloseFile(Prn);
    end;
      

  2.   

    确认使用那种品牌的收银箱, 厂家不同, 控制收银箱的接口也不同.
    有的厂家会提供控制的 DLL的.
      

  3.   

    開錢箱是通過打印機或者客顯去開的。
    指令不太相同,一般的並口開錢箱都是玉米那一個,COM口開錢箱的忘了。呵呵
      

  4.   

    这个具体用Com口还是用Lpt口?由不同的硬件厂商决定。楼上都已经说的很清楚了。嘿!!
      

  5.   

    都会有接口的,而且pos机的键盘都是可编写的可以自由定义
      

  6.   

    推荐用porttalk开发包来处理串、并口操作
      

  7.   

    钱箱的接法有两种:1. 钱箱接在小票打印机上,这种比较简单,看你的小票打印
    机是串口(需要设置相关参数)还是LPT口,象写文件一样向
    端口写入一个命令就可以了,其实原理就是象钱箱发送一个脉冲.
    参考代码:var
      F: TextFile;
    begin
      AssignFile(F,'Com1');   //LPT1
      Rewrite(F);
      try
        sleep(50);
        writeln(F,PChar(#27#112#1#60#255));//具体的指令可以要求厂家提供
        sleep(200);
      finally
        CloseFile(F);
      end;
    end;
    2. 现在有些POS机是提供了钱箱口的,这种比较麻烦,需要
    通过写地址的方式或者利用OPOS(提供一套标准的操作方法)
    一个ACTIVEX控件,比较烦,不建议用.
      

  8.   

    pos打印机,直接和钱箱连就行了,当结帐时,驱动打印机就行。打印机打印时, 打印机后面的一根线连在钱箱上,会自动打开的。这个不用我们操心。
    就这么简单