产测

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

原文: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. NET Core 3.0中的WPF

    在.NET Core 3.0中的WPF中使用IOC图文教程   我们都知道.NET Core 3.0已经发布了第六个预览版,我们也知道.NET Core 3.0现在已经支持创建WPF项目了,刚好今天在 ...

  2. python邮件发送自动化测试报告

    话不多说直接贴代码 # encoding: utf-8import smtplib #发送邮件模块from email.mime.text import MIMEText #邮件内容from emai ...

  3. Python 实现二分查找(递归版)

    二分查找 为什么使用二分查找: python中的列表,一般取值为遍历这个列表,直到取到你想要的值,但是如果你的列表是一个有着百万元素的列表呢,那样for循环遍历列表就会很慢,可能会循环几十万次,才能找 ...

  4. 怎么通过外网来访问自己在Tomcat服务器中配置的项目

    目前还没有试验过 https://blog.csdn.net/qingyisuo/article/details/80086105

  5. laydate年份选择,关闭底框,点击指定年份就选择然后关闭控件,翻页不选择也不关闭控件

    如下图,翻页不选择也不关闭.点击指定年份时再选择和关闭控件 代码如下 // 默认没有选择,把判断赋值当前时间 var iYearCode = parseInt(new Date().getFullYe ...

  6. nssm使用,安装服务、删除服务

    安装服务参考 nssm设置solr开机启动服务 删除服务 Windows删除服务 sc delete 服务名 nssm删除服务 nssm remove 服务名 nssm常用命令: nssm insta ...

  7. (七)mysql 记录长度

    MySQL记录长度 MySQL中规定:任何一条记录最长不能超过 65535个字节: 这句话,就表明 varchar 永远也达不到理论值 : varchar 的实际存储长度能达到多少,是需要看具体的字符 ...

  8. WUTOJ 1284: Gold Medal(Java)

    1284: Gold Medal 题目   有N个砝码,重量为:3i-1(1<=i<=N),有一块重量为 W 的金牌.现在将金牌放在天平的左边.你需要将砝码放在左边或右边使得天平平衡,如果 ...

  9. const关键字的使用——C语言

    一.常规用法 关键字const用来定义只读变量,被const定义的变量它的值是不允许改变的,即不允许给它重新赋值,即使是赋相同的值也不可以.所以说它定义的是只读变量,这也就意味着必须在定义的时候就给它 ...

  10. 【Scratch】它跟Mindstorms,有什么区别?

    第197篇文章 老丁的课程 在正式开始这套课程之前,依照老丁的习惯,还是要给大家白话下东西,该怎么学? 本节课,来讲讲我对于学习这个软件(包括和EV3配合起来)的一些看法.同时,也给小朋友们一些编程学 ...