如何快速使用 RS232‐MDB
RS232-MDB
适配器使用说明
介绍:
PC2MDB (RS232-MDB)用连接 PC 或者其它 RS232 串口设备到售货机的 MDB 总线上,作为
非现金付款设备使用。应该 RS232-MDB 是作为一个 Slave Device 也就是从设备在工作,必
须在与 MDB 主控器(VMC)通信下才能工作。
RS232-MDB 会按照 MDB 协议对 VMC 的 cashless device 轮训指令做出自动的回复,除了
POLL 指令外,其它的指令,RS232-MDB 会转发给串口设备。
所以串口设备需要发送给 VMC 的指令,只要加上 CHECKSUM 后发送给 RS232-MDB 适配器,
适配器会在 VMC 的 POLL 指令来的时候,进行回复。
这样,用户或开发者,只要对售货,付款指令熟悉,就可以进行下一步开发。
当然,任何开发者,必须对 MDB 协议非常熟悉,在威佛公司技术人员的协助上,才能更好地
完成开发。
开始 RS232-MDB 的测试:
第一步:了解你的售货机
a) 售货机必须支持 cashless payment 付款设备,也就是支持 10 或者 60H 地址的设备
b) 售货机必须是 MDB 接口,并且有预留的 MDB 接口。当然威佛的 MDB 适配器,本身
具有 MDB 扩展线。因此,只要本身机器上已经有了 MDB 设备,比如纸币器,硬币器
一类的设备连接在上面,就可以进行扩展出 RS232-MDB 需要的接口。
c) 在测试之前,最好断开其它 MDB 付款设备,尤其是同样是 Cashless device 的设备。
第二步:连接 RS232-MDB 到 VMC,同时另外一端通过串口连接到电脑
RS232-MDB 本身有 MDB 连接线(一公一母两个接头),如果售货机有多余的 MDB 插头,
只要直接插上去即可。如果没有多余插头,只要拔下其它设备,然后插上适配器。拔下的设备
再插到 RS232-MDB 的剩余接头即可。
第三步:打开 RS232-MDB 测试工具,也就是一个串口工具软件 (SerialTool.exe)
用户也同样可以使用其它类似的串口工具进行测试。
在串口测试工具 SerialTool 中选择正确的串口号,并且选择 “Hex Send” ,也就是发送数
据的时候,是采用 HEX(16 进制)方式的数据发送。(接收的数据是采用 ASCII 方式接收,
并显示)。
参考下面图片,进行波特率等其它串口参数设置。
http://www.waferstar.com
Service skype: wafer‐service
如何快速使用 RS232‐MDB
第四步:接好适配器后,对 VMC 进行上电(VMC 通过 MDB 总线,对适配器也就同时上电了)
1、 上电的同时,观察适配器表面的状态指示灯,如果适配器和 VMC 能够成功建立通
信,“MDB Master”指示灯在数据交互的时候会闪烁几次。
如果“MDB Master”指示灯没有闪烁,则检查以下情况:
(1) 检查适配器的地址选择开关是否拨在 10H 位置 (正常来说 VMC 都是会支持 10H
地址的设备)
(2) 对 VMC 再次重新上电测试一次
(3) 可以选择 MDB 适配器的地址到 60H,然后再重新上电测试一次
(4) 联系你的 VMC 制造商,咨询是否支持 Cashless payment 设备
2、 如果 MDB 适配器的“MDB Master”指示灯,闪烁几次,说明 MDB 适配器与 VMC
的通信可以正常建立。
在上电后,PC 机串口会收到适配器上电 ID 数据:“B1234567B”,表示串口与设备
的通信也可以正常建立。
如果不能收到 ID 数据,则检查串口连接线,串口号及串口配置。
第五步:接下来就开始观察 VMC 通过 MDB 适配器发往 PC 的数据
在建立正常通信后,PC 串口会收到一串 VMC 发过来的数据,比如:
11000300020117,或者 1101FFFF000010 等等数据(也就是以 11, 12 , 14 开头的成串
的数据)。这些数据的具体意义,需要对照 MDB 协议进行理解,才能为后面的 PC 程序开发,
通信做好基础。
现在接下来就可以对设备器进行参数配置工作
http://www.waferstar.com
Service skype: wafer‐service
如何快速使用 RS232‐MDB
(MDB 协议页. 126/313)
(MDB 协议页. 128/313)
(MDB 协议页. 154/313)
根据测试样机的 VMC 数据进行简单的解释:
(1) B1234567B
(2) 11000300020117
(3) 1101FFFF000010
(4) 140115
----------------- 上电后,如果你想改变 config data (右侧第一行数据)------
(5) 010109720101070D93
适配器上电后自检的 ID 数据
VMC 设置指令 – Config data
VMC 设置指令 – Max /Min Price
VMC Reader 使能
这个是 VMC 的 config data 数据,如果你想改变这个数据,则需要根据 MDB 协议,设
计好自己的数据内容,然后填写到第一行然后点发送。
注意这里数据的最后一个字节 93,是校验和,如果测试时,自己不清楚校验和计算,
或者担心不正确,则直接发送 010109720101070D,这时适配器会返回校验和 93,然
后自己加到数据的末尾,然后发送 010109720101070D93,适配器返回 00,就是表示
适配器接受这个配置数据了
然后点第二行,发送 0000(适配器复位指令),请求 VMC 对配置数据重新读取即可。
备注: 注意 010109720101070D93 的最后一个字节 93 是校验。这个校验不是 MDB 数据中
的,而且为了 PC 和适配器之间通信检验和安全而加上的。
第六步:接下来就是需要去认真阅读“ Mdb_version_4-2.pdf ”的协议文件了。尤其是 MDB
cashless device 部分 (从 7.1 部分开始,页面 117/313 )
第七步:适配器是具体做了什么工作?
http://www.waferstar.com
Service skype: wafer‐service
如何快速使用 RS232‐MDB
(1) 适配器会自动对 VMC 的 POLL 指令进行回复,并且把有用的数据转发给 PC
(2) PC 只要在需要发出指令的时候,向适配器发出数据即可,其余时序的问题,由适
配器处理
(3) 上电后适配器会自动把 SETUP 数据等回复给 VMC
(4) 用户可以修改 SETUP 数据,然后发起复位指令,请求 VMC 重新读取
第八步:向 VMC 发送付款操作(具体不同的售货机 VMC 可能有不同的操作方式)
1、点第三行,发出数据 03006467
(Page: 131/313)
该指令是开启一个交易流程,告诉 VMC 读一个有效的卡,请求开启一个交易
2、VMC 在用户选货后,发出 VEND Request data: 13000064000B8
(Page: 144/313)
(VMC 发出这个数据,包括货物的价格,选择货物的数据,让刷卡器进行扣款操作)
3、刷卡器应该回复可以出货或者拒绝出货指令(Vend approve or Vend denied)
VMC 回复 vending success:
1302000B20
130417
比如 : 05000A0F
比如 : 0606
VMC 回复 cacel the vending:
130417
http://www.waferstar.com
Service skype: wafer‐service