论文部分内容阅读
LXI(LAN eXtension for Instrument)是仪器在局域网的扩展,它以LAN为通信总线,适合远程测量控制及分布式应用,具有更高的通信速率、灵活的触发方式等一系列优点,成为未来仪器的发展趋势,被广泛应用于工业、军事、航空航天等领域的产品测试。国外著名的仪器公司已经推出了许多符合LXI标准的仪器,国内公司还没有推出符合LXI标准的仪器。SCPI(Standard Commands for Programmable Instruments)解释器是设计LXI仪器的关键技术之一,目前国内设计SCPI解释器的方法还不十分成熟,因此设计LXI系统中SCPI解释器具有重要意义。 本文首先分析了LXI系统软件架构和SCPI解释器运行的基础环境,实现了SCPI解释器运行所依赖的VXI-11服务器。 其次,在分析SCPI命令的词法、语法特点和SCPI解释器现有设计方法的基础上,提出了设计SCPI解释器的新方法。它采用已排序数组链表作为SCPI命令节点的存储结构;根据命令子集的参数特点,设计结构体数组存储命令子集的参数信息;使用词法分析或字符串分解法拆分命令字符串,使用二分查询算法和不区分大小写字符串比较法查询内置命令存储结构,解析命令节点部分;并使用词法、语法分析结合的方法解析命令参数部分;依据SCPI标准设计了提示命令错误信息的结构,实现了命令对应函数的调用;并将SCPI解释器与VXI-11服务器集成并移植到ARM平台。 最后,介绍了软件测试原则、方法、步骤,以其中两个模块为例进行模块测试,并进行集成测试及在PC linux平台、ARM嵌入式linux平台上的验证。