跳到主要内容

IM30 MDB 编程指导

版本 1.0.6

PAX Computer Technology(Shenzhen)Co., Ltd.

版权所有 © 2000-2019 百富计算机科技(深圳)有限公司

百富计算机技术(深圳)有限公司书面许可,不得以任何形式复制或传播本文档的任何内容。

本文档中包含的信息如有更改,恕不另行通知。尽管PAX 计算机技术(深圳)有限公司已尽力确保本文档内容的准确性,但本文档可能包含错误或遗漏。示例和样本程序仅供参考,可能不适合您使用。在将软件投入生产使用之前,您应该验证任何示例或样本程序的适用性。

修订历史

日期​版本笔记作者
201 9-09-21V1.0.0​第一期。Android 团队
201 9-09-26V1.0.4​修改pax_MdbpSetAddrAndroid 团队
2019-12-18版本1.0.5修改mdb NDK apiAndroid团队
2 020-04-03版本1.0.6添加mdb java api​Android团队

目录修订历史 II

1 简介 1

1.1 目的 1

1.2 受众 1

1.3 应用平台 1

2 概述 2

3 多数据库 3

3.1 简介 3

3.2 通讯格式 3

3.2.1 字符格式 3

3.2.2 块格式 4

3.2.3 响应代码 4

3.3 Java API 5

3.3.1 isMdbEnable 5

3.3.2 启用MdbAndReboot 5

3.4 NDK API 5

3.4.1 mdb_open 5

3.4.2 mdb_set_mode 6

3.4.3 mdb_read 6

3.4.4 mdb_write 7

3.4.5 mdb_flush 7

3.4.6 mdb_close 8

3.4.7 mdbp_set_addr 8

3.4.8 设置线程优先级 9

IM30 MDB Programming Guide

  1. 介绍

    1. 目的

本文档描述了传统POS与IM30在软件系统和用户操作上的区别。

  1. 观众

本文档适用于系统开发人员、应用程序开发人员、技术支持、售后维护人员等。

  1. 应用平台

  • 操作系统: Paydroid 7.1.1
  • 固件版本: IM30_PayDroid_7.1.1_ Taurus _V05.3.0X_2019XXXX_Release.paydroid。

百富计算机科技(深圳)有限公司。 10

  1. 概述

IM30 是一款新型无人值守支付终端 基于A64平台,采用Paydroid 7.1.1内核开发。

  • 数据库

MDB是IM30特有的功能,它是一种主从结构的串行总线接口标准,在主从操作模式下采用9600bps的波特率进行通讯。

  1. 数据库

    1. 介绍

多点总线( MDB )是一种用于协调 沟通 之间 自动售货机主控制器(VMC)与多种外设,由美国全国自动机械销售协会(NAMA)及欧洲自动售货机协会(EVA)制定,MDB采用9600bps波特率在主从操作模式下进行通讯,规定总线有1个主机及最多32个外设。 每个外围设备 具有唯一的地址和命令。 所有通信外设均由主机初始化。 IM30提供了控制MDB功能的NDK API ,并且 该API可以通过动态库libpaxapi.so调用。

  1. 通信格式​

    1. 字符格式​

一个字节由1个起始位+8个数据位+1个模式位+1个停止位组成,模式位根据传输模式可以分别为0或1,当控制器VMC向外设发送数据时,模式位置1代表地址字节,0代表数据字节。 当外设向控制器 VMC 发送数据时,模式位置 1 表示所有字节已发送。

  1. 块格式

  • 主控->外设

控制器VMC向外设传输的数据由一个地址字节,若干个数据字节和一个校验字节组成,总数不超过36个字节。

地址字节包含命令的两部分,高5位为外设地址,低3位为外设 命令。

主机响应外设时,会发送响应( ACK )、非响应( NAK)和重发(RET)、 5ms无响应(超时) 相当于无回应。

s内无响应,则主机会重新发出相同或不同的命令,直到收到外设的响应或达到最大无响应时间(投币机为2s ,纸币机为5s ) 。 在此期间,主机应同时访问其他外设。

s )来重置总线。

  • 外设 -> 主控

帧数据包含数据 块、1 字节校验和以及 1 字节ACK或NAK 。校验和字节包含在最大数据块(36 字节)内。

设备必须响应 ACK 、 NAK或RET。

外围设备不需要校验和来响应 ACK 或 NAK 。

如果外设发送数据块后 5ms 内没有响应,则主设备必须在该时间内以 ACK、NAK 或 RET 进行响应。

  • 校验和

校验和字节在每个数据块末尾发送。它是地址字节和所有数据字节的总和,但不包含在总和中。

  1. 响应代码

  • 确认 00H
  • 回流动脉高压
  • 未指定
    1. Java API 接口

该api定义在MdbUtil类中,应用程序可以通过UptApi_V1.0X_2020XXXX.jar进行调用

  1. 启用

  • 目的
  • 观众
  • 应用平台
  • 介绍
  • 通信格式​
    • 字符格式​
    • 块格式
    • 响应代码
  • Java API 接口
    • 启用