日期:2023-01-24 阅读量:0次 所属栏目:计算机应用
摘 要:现代无线通信基站中的很多设备都要依赖于远程终端来操作和维护,包括生产过程中的测试及调试都是要用到远程终端。不只无线通信基站,现在很多电子产品和设备都是基于计算机串口远程终端来测试和调试的,本文讲述如何利用远程终端程序Procomm Plus与aspect脚本语言开发来自动的简便的测试和调试基于计算机串口通信的硬件设备。
关键词:Procomm Plus,ASPECT,硬件测试,硬件调试
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
if nullstr 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可以微红小企业搭建一个小型测试平台。 本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/243165.html
下一篇:OA系统在教学中的应用