产测

----------------------------------------------------

原文:http://www.bixuanzl.com/20180801/1084478.html

-----------------------------------------------

摘要:现代无线通信基站中的很多设备都要依赖于远程终端来操作和维护,包括生产过程中的测试及调试都是要用到远程终端。不只无线通信基站,现在很多电子产品和设备都是基于计算机串口远程终端来测试和调试的,本文讲述如何利用远程终端程序Procomm Plus与aspect脚本语言开发来自动的简便的测试和调试基于计算机串口通信的硬件设备。 
范文写作网 /2/view-3075781.htm
  关键字:Procomm Plus,ASPECT,硬件测试,硬件调试 
  Abstract: the modern wireless base station equipment will rely on many of the remote terminal to operation and maintenance, including production process of testing and commissioning is to use remote terminal. Not only the wireless communication stations, now a lot of electronic products and equipment are based on computer serial remote terminal to test and debug, this paper describes how to use remote terminal program Procomm Plus and aspect scripting language development to automatic simple test and debug based on computer serial interface communication hardware device. 
  Key word: Procomm Plus, ASPECT, hardware test, hardware debugging 
   
   
  中图分类号:TN92 文献标识码:A文章编号: 
   Procomm Plus 介绍 
  Procomm Plus运行在windows下的32位的综合软件,提供传真技术、数据通信、互联网接入远程终端功能,Procomm Plus支持所有的通信类型及处理。利用PROCOMM Plus的集成通信功能可以接入TELNET,FTP,Gopher,邮件和新闻系统,运行脚本程序。在菜单中选择Tools->Scripts,就可以看到脚本相关的菜单,包括执行、编译、编辑、录制脚本。procomm plus的脚本系统叫做ASPECT,ASPECT编程语言功能强大且易于使用。你可以编写脚本来自动化在线会议或文件传输,以及执行其他PROCOMM任务。你可以利用Aspect创建自己的具有Windows图形界面的应用,如对话框、命令和菜单等。 
  ASPECT 脚本语言简述及实现功能 
  一个Aspect脚本程序是一个你创建的一系列命令的能被Procomm Plus执行的简单ascii文本文件,利用Procomm Plus自身携带一个脚本源文件的编辑器或者可以使用其他文本编辑器来编写后缀为was脚本源文件,脚本源文件完成以后需要将其编译,编译后文件后缀为wax,Procomm Plus才能执行。 
  Aspect支持4种数据类型integer(-2147483648 to 2147483647),float(a minimum positive value of 2.22507385072014e-308 to a maximum value of 1.7976931348623158e+308),long(-2147483648 to 2147483647),string(0 to 256 characters);支持各种变量:全局变量、局部变量、系统变量、用户自定义变量、参数变量、数组阵列;支持程序和函数;支持各种数学和逻辑运算。 
  Aspect支持任务和窗口多线程运行。任务和窗户是完全不同的实体,任务ID代表整个应用程序在Windows下运行,每个任务可以有许多单独显示和控制的窗口,换言之每个窗口的ID代表一个特定的任务一个单一的窗口。 
  Aspect支持两个重要图形界面格式:用户窗口和对话框。用户窗口功能允许根据脚本需求自定义PROCOMM Plus的主窗口的外观。你可以:显示位图,图标或图元文件;显示点击按钮或位图;使用位图或图元文件的背景将终端窗口调整甚至隐藏;创建无形的“热点”,用户可以在用户窗口点击;创建一个自定义的动态链接库(DLL)控制的自定义对象。对话框的功能允许你为任何目的创建自定义对话框。Aspect支持标准的Windows对话框控件,包括:点击按钮和图标按钮;列表框和组合框,目录内的文件清单,包括特殊DirListBox控件;字符串或文本文件的编辑框;静态和可变文本标签和信息,包括程序的特殊路径控制和当前驱动器和路径的功能显示;复选框和选项按钮。Aspect也支持使用graphical elements,例如对话框内的icons, bitmaps, metafiles and groupboxes。 
  在Aspect里,编译脚本时,插入符号的翻译是单独记录的,包括向活动的终端写入数据命令或给活动中断返回数据提供一个字符串的命令。例如,发送字符串命令到当前活动的通信端口:transmit "ATDT1-573-875-0503^M",将会想当前活动端口写入“ATDT1-573-875-0503”(没有引号),接着一个回车字符ASCII 13 或 ^M。 
  Procomm Plus 脚本程序开发应用实例 
  以motorola wimax基站Modem板为例,Modem板具有两个主控模块分别为BHP和OHP,两个数据处理模块分别为DSPA和DSPB,都具备rs232串行端口已连接计算机,在生产和应用过程中利用远程终端对其调试、配置、维护等操作。Modem板子生产出来以后首先将EID包括部件号、序列号、MAC地址写入到板载的Flash里面,再利用其自身命令对其进行功能测试测试,包括状态灯、电源、Dram、I2C、网络通信、光线通信、板内模块相互访问等功能。我们就生产中利用Procomm Plus 对其的一些操作和调试测试过程来讲述Aspect脚本语言的具体开发使用。 
  为了更直观的操作,首先要定义一个对话框: 
  dialogbox 0 0 0 205 300 15 "Wimax Modem Debug Script" 
  …… 
  Enddialog 
  while 1 
  dlgevent 0 Event 
  switch Event 
  default ; 退出事件 
  exitwhile ; 退出while 循环. 
  endcase 
  endswitch 
  endwhile 
  dlgdestroy 0 CANCEL ; 关闭对话框 
  将MAC地址写入Modem,部件号和序列号与之原理相同不赘述,将对话框提示代码加入到dialogbox下: 
  text 4 10 47 20 12 "MAC:" left ;对话框上提示MAC输入栏位置

  editbox 7 30 45 60 12 EidMac ;MAC地址输入栏,地址以字符串形式赋值给变量EidMac 
  pushbutton 8 30 60 60 12 "&Write" ;写入执行按钮 
  在switch Event内加入以下代码,当用鼠标点击write按钮时执行写入Mac地址的操作 
  case 8 
  ifnullstr EidMac ;判断mac地址输入框如果为空 
  usermsg "Please Input Mac Address" ;弹出对话框提示输入mac地址 
  goto label ;跳转到label,退出本次事件 
  endif ;结束判断 
  strinsert Eidmac nSpace 4 ;根据系统求在输入的mac地址的第4位和第9位插入空格 
  strinsert Eidmac nSpace 9 
  CheckPrompt() ;提示符判断子程序,判断系统是否运行 
  transmit "eid_default^M" ;发送清空系统内现有eid值 
  transmit "eid_replace 0008 " ;发送mac替换命令 
  mspause 100 ;停顿100毫秒,防止字符丢失 
  transmit EidMac ;发送mac地址信息 
  mspause 100 
  transmit "^M" ;传送“回车”确认执行 
  CheckPrompt() 
  transmit "eid_program^M" ;传送写入Flash命令 
  CheckPrompt() 
  label: ;跳转Label 
  endcase ;事件结束 
   
  为了丰富程序功能可以用bitmap命令将位图贴到对话框内,用程序对其操作,实现状态显示功能,在Wimax modem上需要对状态灯测试,首先制作代表等红绿灯状态所需位图文件,部分程序如下: 
  string Gon = "g_on.bmp" ;定义字符串Gon为绿灯亮位图文件 
  string Goff = "g_Off.bmp" ;定义字符串GOff为绿灯灭位图文件 
  GsState = Goff ;初始状态为绿灯灭的状态 
  bitmap 52 120 17 12 10 GsState ;将位图赋值给字符串变量GsState 
  CheckPrompt() 
  transmit "mwb f900001C 01^M" ;传送命令改变Modem状态灯的状态 
  waitfor ">" 5 ;等待提示符 
  GsState = Gon ;改变字符串变量GsState为绿灯亮的位图 
  dlgupdate 0 52 ;更新对话框显示状态,是对话框上的绿灯亮起来 
  passfail() ;调用判断测试通过或失败子程序来判断是否通过 
  以上程序为例,通过完善程序功能和代码可以覆盖Wimax Modem板的所有的除了需要外接设备来检测的功能测试,也能实现所有的除了需要外接设备来检测功能的自动测试。虽然此种方法测试不能代替工厂由labview和多种测试设备搭建的平台的完善测试,但在调试过程中是非常有帮助的,将大量的需要人为输入的命令通过用Aspect脚本程序来实现,大大的提高了工作效率。 
  小结 
  通过以上分析,Procomm Plus 和其脚本语言Aspect,不仅能给大型电子生产企业的生产提高工作效率,而且更加适合一些没有完善的测试平台的生产以计算机串口远程终端为平台的设备的中小企业,用Procomm Plus和Aspect可以微红小企业搭建一个小型测试平台。 
  注:文章内所有公式及图表请用PDF形式查看。

Procomm Plus 与ASPECT脚本语言在基于远程终端设备上的测试应用的更多相关文章

  1. js脚本语言在页面上不执行

    转换原理:// 编码原理就是创建TextNode节点,附加到容器中,再取容器的innerHTML.(将脚本编码) // 解码原理是将字符串赋給容器的innerHTML,再取innerText或text ...

  2. ESP8266使用详解--基于Lua脚本语言

    这些天,,,,今天终于看到了希望,,,天道酬勤 先说实现的功能...让ESP8266连接无线网,然后让它建立服务器,,我的客户端连接上以后,发给客户端发数据模块打印到串口,,往ESP8266串口里发数 ...

  3. 基于JS的高级脚本语言 Sara

    Sara-基于JS的高级脚本语言 欢迎使用Sara,Sara是一款基于JavaScript的全新的高级脚本语言! Sara不像我们工作室上一款编程语言作品-Ginit一样,他属于更高级的语言 Sara ...

  4. 基于 C++ 的脚本语言 cpps 脚本

    cpps 脚本是一个基于 C++ 的脚本语言. 基础语法: if&else 接口说明 根据括号中数据判断执行相关代码. 代码演示 var i = toint(io.getc()); if(i  ...

  5. 基于 Go 的可嵌入脚本语言 zygomys

    zygomys zygomys 是一种可嵌入的脚本语言. 它是一个具有面向对象风格的现代化 Lisp,提供了一个解释器和 REPL(Read-Eval-Print-Loop:也就是说,它带有一个命令行 ...

  6. 五,ESP8266 TCP服务器多连接(基于Lua脚本语言)

    https://www.cnblogs.com/yangfengwu/p/7524326.html 一些时间去准备朋友的元器件了... 接着写,,争取今天写完所有的文章,,因为答应了朋友下周5之前要做 ...

  7. 使用Lua脚本语言开发出高扩展性的系统,AgileEAS.NET SOA中间件Lua脚本引擎介绍

    一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...

  8. [Java面试九]脚本语言知识总结.

    核心内容概述 1.JavaScript加强,涉及到ECMAScript语法.BOM对象.DOM对象以及事件. 2.Ajax传统编程. 3.jQuery框架,九种选择器为核心学习内容 4.JQuery ...

  9. SiKuli 图形脚本语言【转载】

    Sikuli 是一种新颖的图形脚本语言,或者说是一种另类的自动化测试技术.它与我们常用的自动化测试技术(工具)有很大的区别. 当你看到上图sikuli的脚本时,一定会惊呼,这样都可以~!脚本加截图~~ ...

随机推荐

  1. 移动架构-手写ButterKnife框架

    ButterKnife在实际开发中有着大量运用,其强大的view绑定和click事件处理,使得开发效率大大提高,同时增加了代码的阅读性又不影响其执行效率 注解的分类 注解主要有两种分类,一个是运行时, ...

  2. AutoMapper扩展帮助类

    /// <summary> /// AutoMapper扩展帮助类 /// </summary> public static class AutoMapperExtension ...

  3. nginx之配置proxy_set_header问题梳理

    客户端请求web服务,客户端:ip:192.168.223.1 nginx作为反向代理服务器:192.168.223.136 nginx作为后端web服务器:192.168.223.137 前提条件: ...

  4. PGA+SGA的几个参数操作

    1.sga_max_size;是静态的必须重启之后生效需要加scope=spfile;(不要超过物理内存值) SQL> alter system set sga_max_size=500M sc ...

  5. Redis 常用命令学四:有序集合类型命令

    1.增加元素,修改存在元素的分数 127.0.0.1:6379> zadd score 99 a 88 b 66 c (integer) 3 127.0.0.1:6379> ZADD sc ...

  6. 路由 router-view

    路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的内容,如果点击页面上的about 按钮,页面中就要显示about 的内容.Home按钮 => home 内容, ...

  7. java日志框架系列(5):logback框架appender详解

    1.appender 1.什么是appender Appender 是负责写记录事件的组件. Appender 必须实现接口“ch.qos.logback.core.Appender”.该接口的重要方 ...

  8. docker&k8s-配置/常用命令

      kubectl delete deployment,ingress,svc demo-mml-jp-ylmopt-web-1 -n demo-mml  #删除预生产环境mml组ylmopt-web ...

  9. TiDB部分

    TiDB部分 https://blog.csdn.net/D_Guco/article/details/80641236 https://www.v2ex.com/t/508094 https://u ...

  10. SAS学习笔记11 SAS宏

    宏是一个被储存的文本,用一个名字识别它.最简单的宏就像一个宏变量一样工作,但复杂的宏可以完成许多宏变量不能做的事. 定义宏的语句格式为: %macro 宏名称: 宏文本 %mend <宏名称&g ...