自助售货机锁控板通用通讯协议解析

版权申诉
5星 · 超过95%的资源 1 下载量 72 浏览量 更新于2024-08-07 收藏 36KB DOCX 举报
"自助售货机--锁控板通讯协议_V1.0" 本文档详细阐述了自助售货机中锁控板与应用系统之间的通讯协议,主要关注于General Communication Protocol (GCP),该协议用于LM6200/LM6600系列产品的出货控制模块。GCP协议设计为单主机多从机模式,由APP(应用系统)发起命令(CMD),由VM(出货模块)进行响应(ACK)。此协议旨在简化不同机型和业务的开发,并确保应用系统的兼容性和一致性。 通讯协议的物理层定义为标准三线串口,包括RXD、TXD和GND,支持RS485、RS232和TTL电平。数据传输采用大端字节序,波特率设定为9600/8/N/1。文档中提到的整数默认为无符号整数,特殊用户定制的协议不在本文档中描述。 传输层报文封装结构包含了消息头(HEADER)、长度(LEN)、版本号(VER)、消息类型(MT)、地址(ADDR)、应用数据(APPDD)以及两个CRC16校验码(CRC16-H和CRC16-L)。例如,完整的报文示例为"C7070051000000A49F",其中CRC-16的计算方法在文档中给出了C语言实现。 报文被分为三种类别以满足APP的业务需求:出货控制CMD、状态查询CMD和控制响应ACK。具体到每个类别的报文,例如APP_INQ_CMD用于查询VM状态,APP_VEND_CMD则用于发起出货指令。每个报文都有详细的结构和参数解释,如APP_INQ_CMD可能包含对VM的特定查询,而APP_VEND_CMD则可能携带商品编码和出货数量等信息。 出货操作流程部分,以格子机LM6210系列为例,详细描述了从APP发出出货指令到VM执行出货的完整步骤。流程中可能涉及验证支付、锁定目标格子、释放商品以及更新库存等多个环节。 最后,文档还提供了APP报文组包的建议,以优化报文的构造和提高通信效率。 通过这份协议,开发者可以理解如何构建和解析与锁控板交互的报文,从而实现自助售货机的正确运行和管理。