ccTalk硬币接收器插入硬币时没有反应



我编写的Linux应用程序应该处理硬币插入(假设现在我需要在应用程序中识别插入了什么硬币)。我使用SCA1硬币接收器(ICT)。我需要让它与波兰硬币(货币-波兰兹罗提)一起工作。我能够让PC和Coin Acceptor之间的通信正常工作,但我有一些问题。

快速描述我的设置:

  • PC通过ccTalk协议通过RS232(+USB转换器)连接到硬币接收器
  • 开关块1:全部关闭,但第10个开关设置为打开(根据文件)
  • 开关块2:全部关闭
  • 我将禁止状态设置为允许所有(来自手动文档)
  • 我将主禁用状态设置为启用设备(来自手动文档)

我可以从Coin Acceptor中提取有关序列号、软件修订等的数据。简单的民意调查也可以。唯一的问题是关于插入硬币的实际信息。根据文档,我每隔500毫秒左右发送一次"读取缓冲信用或错误代码"(标题229)命令,每次我得到结果0(字节等于0x00),结果都会正确返回,只是我似乎还没有插入任何硬币。我试着用抛光硬币和10美分硬币。所有的硬币都是"被拒绝的",我所说的被拒绝是指硬币接受者似乎不处理这些硬币(只是返回它们),另一方面,当我发送命令来获取被拒绝硬币的数量时,我再次得到0。

所以现在的问题是,你知道需要任何额外的设置才能让它发挥作用吗(更喜欢抛光硬币)?此外,默认情况下(假设硬币接收器未连接到PC,但已通电),硬币接收器应如何对插入的硬币做出反应?只是退回它们(就像我的情况一样)或"处理"它们,然后退回或放入"银行"?

我想我发布代码是没有意义的。我创建了两个不同的应用程序,问题是相同的。

一个在蟒蛇,我冒险https://github.com/Baldanos/ccTools,第二个应用程序是用C编写的,类似于:https://github.com/BitCoding/cctalk.

这个设备坏了是值得怀疑的,因为我试着使用其他没有区别的设备。此外,这些设备都是全新的。

任何建议都会有所帮助。提前谢谢。

我本来会写这篇文章作为评论,但我没有足够的声誉:

我还使用了Baldanos的库作为让我的硬币接收器工作的起点。我会先更换

ser.read(50) 

带有

time.sleep(0.01)          #give it time for all bytes to be in ser.in_waiting   
ser.read(ser.in_waiting)

因为,正如评论中所说,你不知道消息是否会有50字节长。

也就是说,我设法在不改变太多事情的情况下让它发挥作用。对我来说,硬币接收器已经设置为欧元。当您请求硬币id(发送"184"和范围为1,16)时,您的硬币接收器会返回什么?

相关内容

  • 没有找到相关文章

最新更新