
連接MDB紙幣接收器和硬幣器后,然后開始用DC24V給MDB-RS232上電。(注意電源適配器選擇電流大于3A的)。上電后,串口測試工具會收到一系列數據:
(以下只是舉例,實際數據可能會有一些差異)
ASCII顯示:

HEX顯示:

4D 44 42 2D 52 53 32 33 32 20 56 34 2E 32 20 63 6F 6D 70 61 74 69 62 6C 65 0D 0A 30 38 20 30 30 0D 0A 33 30 20 30 30 0D 0A 31 30 20 46 46 0D 0A 34 30 20 46 46 0D 0A 36 30 20 46 46 0D 0A 46 46 20 0D 0A 30 38 20 30 42 0D 0A 33 30 20 30 36 20 30 39 0D 0A 33 30 20 30 39 0D 0A 33 30 20 30 39 0D 0A 33 30 20 30 39 0D 0A 33 30 20 30 39 0D 0A 33 30 20 30 39 0D 0A 33 30 20 30 39 0D 0A 30 30 20 0D 0A 30 33 20 31 31 20 35 36 20 30 35 20 30 31 20 30 30 20 30 33 20 30 31 20 30 32 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 37 36 20 0D 0A 30 31 20 30 30 20 38 36 20 30 30 20 30 41 20 30 31 20 30 30 20 43 38 20 46 46 20 46 46 20 46 46 20 30 31 20 30 35 20 30 41 20 31 34 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 37 42 20 0D 0A 30 30 20 0D 0A 33 30 20 38 31 0D 0A 30 38 20 35 31 20 30 31 0D 0A
我們需要將這些HEX數據轉換成ASCII格式,可以直接方便地與MDB協議進行比較。 如果使用串口工具進行測試,串口工具一般都有一個ASCII或HEX顯示方式的選擇,這樣很容易觀察和理解數據格式。
上電后設備自檢和狀態報告的數據
MDB-RS232 V4.2 compatible4D 44 42 2D 52 53 32 33 32 20 56 34 2E 32 20 63 6F 6D 70 61 74 69 62 6C 65 0D 0A
08 00 30 38 20 30 30 0D 0A (硬幣器已連接)
30 00 33 30 20 30 30 0D 0A (紙幣器已連接)
10 FF 31 30 20 46 46 0D 0A (非現金支付設備1未連接)
40 FF 34 30 20 46 46 0D 0A (USD設備未連接)
60 FF 36 30 20 46 46 0D 0A (非現金支付設備2未連接)
FF 46 46 20 0D 0A
08 0B 30 38 20 30 42 0D 0A (狀態數據0B表示硬幣器剛復位好)
(硬幣器的各種狀態,對照MDB協議V43的第68頁)
30 06 09 30 36 20 30 39 0D 0A (狀態數據06表示紙幣器剛復位好)
(狀態數據09表示紙幣器處于禁能狀態)
(紙幣器的各種狀態,對照MDB協議V43的第96頁)
30 09 33 30 20 30 39 0D 0A
30 09 33 30 20 30 39 0D 0A
30 09 33 30 20 30 39 0D 0A
30 09 33 30 20 30 39 0D 0A
30 09 33 30 20 30 39 0D 0A
30 09 33 30 20 30 39 0D 0A
(以上為設備上電后硬幣器,紙幣器自動報告的數據和狀態,可以看出,主動報告的數據前面都有對應設備的ID號:08,30,10,60,40等,后面跟的是報告數據或者狀態。當然不同的設備,不同廠家,報告的數據可能會有差異。具體需要用戶對照MDB協議,進行理解)
PC發送使能,查詢配置,設備會做出回復
PC Send: 0CFFFFFFFF (使能硬幣器)
PC Receive: 00 30 30 20 0D 0A (回復00)
PC Send: 09 (讀取硬幣器配置數據)
PC Receive: 03 11 56 05 01 00 03 01 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 76
30 33 20 31 31 20 35 36 20 30 35 20 30 31 20 30 30 20 30 33 20 30 31 20 30 32 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 37 36 20 0D 0A
PC Send: 31 (讀取紙幣器配置數據)
PC Receive: 01 00 86 00 0A 01 00 C8 FF FF FF 01 05 0A 14 00 00 00 00 00 00 00 00 00 00 00 00 7B
30 31 20 30 30 20 38 36 20 30 30 20 30 41 20 30 31 20 30 30 20 43 38 20 46 46 20 46 46 20 46 46 20 30 31 20 30 35 20 30 41 20 31 34 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 30 30 20 37 42 20 0D 0A
PC Send: 34FFFF0000 (使能紙幣器)
PC Receive: 00 30 30 20 0D 0A
收到一個付款后,設備會主動給PC報告數據
比如紙幣器收到一個面額的紙幣:
30 81 33 30 20 38 31 0D 0A
比如硬幣器收到一個面額的硬幣:
08 51 01 30 38 20 35 31 20 30 31 0D 0A
從上面的描述可以看出,為了更好的理解數據,我們需要注意幾點:
1.任何到PC的數據串都以0D 0A結尾
2、PC端發送的數據為HEX格式,對應MDB協議
3、PC接收到的數據按照ASCII格式轉換后對應MDB協議,例如ASCII 08對應的十六進制數據為30 38
4、MDB設備主動上報的數據或狀態會以設備ID為前綴:08、30、10、60,表示數據來自硬幣器、紙幣器、非現金設備01或非現金設備02
5. PC發送查詢命令。因為是響應方式,不會混淆,所以設備返回的數據沒有前綴08、30、10、60
6、關于奇偶校驗字節:
MDB設備自動報告狀態,收款數據,無奇偶校驗字節,比如 08 51 01
MDB設備返回的單字節00不需要校驗字節00
MDB設備回復PC命令時,如果是多字節數據,最后一個字節為和校驗字節
比如 03 11 56 05 01 00 03 01 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 76
(以上ASCII數據需要十六進制求和)
03+11+56+05+01+00+03+01+02+00+00+00+00+00+00+00+00+00+00+00+00+00+00 = 76
-
適配器
+關注
關注
9文章
2129瀏覽量
71288 -
數據通信
+關注
關注
2文章
526瀏覽量
35090 -
RS232
+關注
關注
13文章
876瀏覽量
98291 -
MDB
+關注
關注
1文章
27瀏覽量
9922
發布評論請先 登錄
MAX14632 USB充電器適配器仿真器解析
STEVAL-MKI242A適配器板技術解析與應用指南
Texas Instruments USB-TO-GPIO2接口適配器技術解析
適配器EMC測試要求
MDB-RS232適配器數據通信格式解析
評論