### MDB_ICP协议详解 #### 一、简介与通信架构 MDB_ICP协议,全称为“Multi-Drop Bus & ICP Protocol”,是一种广泛应用于自动售货机和其他自助服务设备中的通信协议,它定义了主从架构下的串行总线接口标准。在该协议下,系统由一个主机和最多32个外设构成,每个外设拥有唯一的地址和命令集。通信速率设定为9600bps,确保了数据传输的稳定性和可靠性。 #### 二、通信格式深度解析 ##### 字节与块格式 1. **字节格式**:每字节由11位组成,包括1个起始位、8个数据位、1个模式位和1个停止位。模式位用于区分地址字节和数据字节,当控制器(VMC)发送数据时,模式位为1表示地址字节,0则表示数据字节。外设向VMC发送数据时,模式位1指示所有字节已发送完毕。 2. **块格式**:主到从的通信中,数据块由地址字节、若干数据字节和校验字节组成,总字节数不超过36个。地址字节同时包含外设地址和命令信息,校验字节确保数据完整性。从到主的通信中,帧数据包含数据块、校验和及应答或非应答信号。 3. **校验和计算**:校验和字节为地址字节和所有数据字节的累加值,自身不参与累加计算,用以检测数据传输错误。 4. **响应代码**:定义了三种基本响应代码,包括ACK(确认)、RET(重发请求)、NAK(非确认),分别对应00H、AAH、FFH,用于处理数据接收确认或异常情况。 #### 三、软件操作规则与异常处理 1. **查询机制**:为了保持与所有外设的通讯畅通,控制器VMC需每隔25-200ms执行一次查询循环,通常通过POLL指令或类似指令实现。若外设在最大无响应时间内未能响应,VMC将以10秒周期发送RESET指令进行复位,直至恢复正常通信。 2. **命令兼容性**:主控器VMC仅发送外设支持的命令,外设也仅回应VMC支持的响应,确保通信过程中的互操作性。 #### 四、硬件规范概览 硬件层面,MDB_ICP协议规定了主控器的电压输出范围、总线发送接收规范以及连接头针输出细节。例如,主控器的电压输出应在20VDC至42.5VDC之间,且主机与从机间采用5V光电隔离,确保电气安全与信号稳定性。 #### 五、硬币器功能与指令集 硬币器作为MDB_ICP协议中的关键外设之一,提供了不同级别的功能支持。Level2和Level3硬币器均支持接收硬币、累计收币总额、关闭收币功能、退出硬币等基本功能,而Level3硬币器额外提供了硬件版本获取、内置找零算法、自诊断以及文件传送等高级功能。 复位与初始化过程对于硬币器至关重要,其“最大无响应时间”为2秒。一旦超时,VMC将发送RESET指令,并随后执行一系列初始化指令,如POLL、SETUP、EXPANSIONIDENTIFICATION等,确保硬币器正常工作并实现预期功能。 硬币器指令集包括基础指令和仅Level3硬币器支持的扩展指令,涵盖了复位、设置、状态查询等多种操作,每个指令携带特定的附加数据,并预定义了外设的响应格式,以确保通信的有效性和准确性。 MDB_ICP协议不仅定义了一套完整的通信规则和规范,还详细阐述了硬件与软件层面的实施细节,以及针对特定外设如硬币器的功能和指令集,为构建高效、稳定的自动售货机系统提供了坚实的技术基础。
剩余7页未读,继续阅读
- 粉丝: 0
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助