发明名称 一种实现快速解析基于SCPI协议的通信指令的方法
摘要 本发明涉及可编程器件及设备、板级之间的通信技术,具体涉及一种C语言描述的实现快速解析基于SCPI协议的通信指令的方法。本方法将SCPI指令按照层次设置成二叉树的结构,然后采用迭代的方式解析出指令所代表的含义,即该指令的指令号,每个指令号代表一种对仪器设备的操作,首先对于新接收到的指令首先从根节点开始进行分析,然后对于接收到的指令的每一级节点进行解析,通过采用本方法,可以便捷地实现SCPI指令的解释,即让设备执行此指令相应的操作。SCPI有非常好的可读性,可维护性,可广泛的应用于设备,板级之间的通信。本方法可在诸如MCU,ARM,POWERPC,MIPS,FPGA等可编程器件上实现。
申请公布号 CN103605496A 申请公布日期 2014.02.26
申请号 CN201310630799.8 申请日期 2013.12.02
申请人 天津光电通信技术有限公司 发明人 王东峰;陈伟峰;张睿;王卫龙;刘佳
分类号 G06F9/30(2006.01)I 主分类号 G06F9/30(2006.01)I
代理机构 天津中环专利商标代理有限公司 12105 代理人 王凤英
主权项 一种实现快速解析基于SCPI协议的通信指令的方法,其特征在于,将SCPI指令按照层次设置成二叉树的结构,然后采用迭代的方式解析出指令所代表的含义,即该指令的指令号,每个指令号代表一种对仪器设备的操作,其指令解析步骤如下:步骤一:对于新接收到的指令首先从根节点开始进行分析;步骤二:对于接收到的指令的每一级节点进行解析,每一级解析步骤如下:a.首先判断该节点的子节点是否为空;若不为空,则比较该节点的指令与指令树中该级指令字符是否匹配;若不匹配,则判断其兄弟节点是否为空;若兄弟节点不为空,则迭代解析其兄弟节点;若兄弟节点为空,返回错误,说明指令输入错误;b.若该级节点指令的字符与指令树中该级指令字符匹配,则入栈本节点的指令号,并迭代解析其子节点;c.若判断该节点的子节点为空,则比较该节点的指令与指令树中该级指令字符是否匹配,若不匹配,判断其兄弟节点是否为空,若兄弟节点不为空,则迭代解析其兄弟节点,若兄弟节点为空,返回错误,说明指令输入错误;d:若该节点的指令与指令树中该级指令字符匹配,则入栈该节点的指令号,然后出栈全部指令号,并计算总指令号。
地址 300211 天津市河西区泰山路9号