有没有人和自动售货机打交道?我试图写一个自动售货机的C#接口,使用MDB协议。虽然我对串口编程略知一二,但在编写硬件接口方面我还是个新手。我现在有这些问题,
a.我如何连接我的RS232接口到这个接口,我应该使用任何其他接口或只使用自动售货机的接口?b.如何测试代码无论我写什么,我在连接到接口时都有问题?
任何帮助都将不胜感激。
发布于 2017-03-29 00:04:36
这个答案对您来说可能太晚了,但也可能有其他阅读器;-)如前所述,您需要有一个硬件部件来连接MDB总线和RS232接口。此硬件部分负责老式的9位协议和电压电平(例如,电流回路MDB总线与电压电平的RS232接口)。您的硬件必须进一步注意,以满足低至1.5ms的MDB计时规范;使用标准的高级操作系统(例如,Windows、Linux……)无法实现如此短的超时。最后,你必须发明一个在RS232和MDB总线之间的接口协议来处理时序和帧的要求。
你可以自己设计它,也可以购买一个解决方案来处理所有提到的事情(例如http://blog.abrantix.com/webshop/about-mdb-converter/ -当然,还有其他商业解决方案可用)。
一般来说,这样的转换器可以通过任何受欢迎的编程语言(C#、JAVA、Python...)来实现。只要您可以从串行和/或USB端口发送和接收数据。
发布于 2017-04-20 20:51:54
实际上,你可以使用标准的8位RS232硬件在MDB协议上进行基本的通信,例如常见的USB- to -RS232加密狗。您可以通过在标记和空间奇偶校验设置之间切换来模拟第9个数据位。
很明显,人们都有done this on Linux / Raspberry PI。
而且我们的Docklight用户也可以通过temporary parity changes成功访问MDP设备,并且我们有一个相关的Docklight example for 9 bit。
https://stackoverflow.com/questions/41149575
复制相似问题