BT-Basic函数之首字母S

BT-Basic函数之首字母S


文章目录

  • BT-Basic函数之首字母S
    • [`safeguard <type>`](#safeguard <type>)
    • save
    • [save failures](#save failures)
    • [scratch board](#scratch board)
    • [select boards on panel](#select boards on panel)
    • send
    • [setup test editor](#setup test editor)
    • sgn
    • shorts
    • softkey
    • [softkey clear](#softkey clear)
    • softkeys
    • [softkeys clear](#softkeys clear)
    • [softkeys off](#softkeys off)
    • [softkeys on/off](#softkeys on/off)
    • [softkeys over](#softkeys over)
    • [softkeys to/over](#softkeys to/over)
    • [special aux_](#special aux_)
    • spoll
    • spmc
    • sps
    • status
    • stop
    • store
    • subexit

safeguard <type>

safeguard 语句设置应用于数字测试的安全级别。从下面的语法可以看出,四个级别分别是 all、digital、cool 和 none(关闭)。

在编译数字测试时,编译器会根据电路板目录下的 safeguard 文件中的信息以及 board.o 文件中的信息进行安全分析。安全分析例程确定每个测试的超时时间以及测试之间需要插入的冷却延迟。

使用 safeguard none 时,没有数字测试会因安全原因被禁止运行,冷却延迟也不执行。

使用 safeguard cool 时,没有数字测试会因安全原因被禁止运行,但冷却延迟会被执行。

使用 safeguard digital 时,如果某个数字测试会损坏被测设备或上游数字设备,则该测试会被禁止,此外,既定的冷却延迟也会被执行。

使用 safeguard all 时,如果被测设备有任何上游的非数字设备连接到它,则数字测试会被禁止运行(您可以使用此选项以确定是否存在此类设备,然后相应地更改测试计划)。safeguard all 也会因与 safeguard digital 相同的原因禁止测试,并强制执行冷却延迟。

每当测试计划的新运行开始时,默认的安全级别会自动切换到 safeguard all。

语法:

复制代码
safeguard all           ! 保护所有设备
safeguard digital       ! 仅保护数字设备
safeguard cool          ! 关闭保护;执行冷却延迟
safeguard none          ! 关闭所有保护控制

save

save 语句创建一个 ASCII 文件并将当前工作区中的行存储到该文件中。工作区保持不变。在执行此语句之前,文件不得存在。

如果未指定模式,则将工作区的当前模式记录在文件中。如果指定了模式,则该模式必须与工作区的当前模式相同,或者是文本模式。如果指定了文本模式,则无论工作区的当前模式如何,文本模式都会记录在文件中。

语法:

复制代码
save <file id>
save <file id>,<parameters>
save <mode> <file id>
save <mode> <file id>,<parameters>

其中 <file id> 是一个 <字符串表达式>

<mode> 可以是:

  • 模拟(analog)
  • 基本(basic)
  • 配置(configuration)
  • 数字(digital)
  • 引脚(pins)
  • 保护(safeguard)
  • 短路(shorts)
  • 状态(states)
  • 测试顺序(testorder)
  • 文本(text)
  • 线网表(wirelist)

<parameters> 可以是:

  • <first line>
  • <first line>,<last line>
  • <first line>,<last line>,<error variable>
  • <first line>,,<error variable>
  • ,<last line>
  • ,<last line>,<error variable>
  • ,,<error variable>

其中:

  • <first line> 是一个 <数字常量>
  • <last line> 是一个 <数字常量>
  • <error variable> 是一个 <数字变量>

如果省略了中间参数,且包含后续参数,则语法要求使用逗号。

参数:

<file id>

要创建的新文件的标识符。该文件必须尚不存在,并且不能表示设备。

<mode>

要记录在文件中的模式。

<first line>

指定要保存到文件的第一行的行号的正整数。该行必须存在于工作区中。如果省略此参数,则默认为工作区中的第一行。

<last line>

指定要保存到文件的最后一行的行号的正整数;任何后续行都被忽略。如果省略此参数,则默认为工作区中的最后一行。

如果指定的 <last line> 超出了工作区的最后一行,则假定为已存在的最后一行。<last line> 必须等于或大于要保存的第一行的行号。

<error variable>

错误变量的标识符。

示例:

复制代码
save "/market/ts/my‑file"          ! 保存工作区中的所有行
msi "/production/test/a3564b"

save "report1", 25                 ! 保存第 25 行到工作区结束的内容
save "report2", 62,136             ! 保存第 62 行到第 136 行的内容
save "report3",,, Alpha            ! 保存所有行:指定错误变量

                                   ! ‑ 注意"占位"的逗号
save text "board‑47/shorts1",2,4,Err

save 和 store 语句是相同的。

save failures

翻译:

save failures 语句指示系统开始和停止收集故障数据,以便为 Probe 语句做好准备。

Probe 语句检查测试板上器件的夹具接触情况。当与 save failures 和 probe failures 语句一起使用时,Probe 语句会检查系统在收集故障数据时失败的器件的夹具接触情况。

请参阅 probe 语句的语法描述。

请注意,保存的故障数据不会从一个程序执行保留到下一次执行。

语法:

复制代码
save failures on

save failures off

参数:

(无)

示例:

复制代码
save failures on        ! 开始保存故障数据。

   test "digital/U1"
   test "digital/U2"

save failures off       ! 停止保存故障数据。

   test "digital/U3"
         .
         .
         .

probe failures          ! 如果 U1 和 U2 失败,则探测。

scratch board

scratch board 语句用于从内存中移除由 load board 语句放置的电路板对象数据。具体而言,它会从内存中擦除 board.o、wirelist.o 和 shorts.o 文件的信息(但不会擦除关联磁盘文件中的信息)。需要从这些文件中获取信息的语句在另一个 load board 语句执行之前无法执行。

select boards on panel

select boards on panel 语句允许您使用鼠标或软键指定多板面板上要测试的电路板,以及不测试的电路板。

如果在执行此语句之前没有执行 board graphics 语句,电路板的选择状态将以文本形式显示。select boards on panel 语句会临时重新定义软键,因此您可以使用它们来选择或取消选择电路板,然后恢复它们以前的定义。如果在执行此语句之前执行了 board graphics 语句,则面板会通过电路板图形查看器以图形方式显示。

除了使用软键之外,您还可以通过单击鼠标选择电路板。已选择的电路板通过黄色虚线识别。

使用任一方法选择所需电路板后,按下或者单击标记为"Done"的软键(您可以通过不做任何选择而直接按下"Done"来快速选择所有电路板)。

这会将您的选择返回到用于存储与此语句关联的电路板选择信息的整数数组中(参见下面的示例)。

语法:

复制代码
select boards on panel <array id>

select boards on panel <array id>, <error variable>

其中 <array id> 是一个 <字符串变量>

<error variable> 是一个 <数字变量>

参数:

<array id>

一个整数数组的标识符,其元素对应于多板面板上的各个电路板。如果板没有被突出显示,每个元素接收 0;如果板被突出显示,则接收 1。

<error variable>

可选的错误变量的标识符。

示例:

用于测试多板面板的 testmain 片段:

sh 复制代码
dim BoardSet(0:256)               ! 用于存储状态信息的数组。
   ...

board graphics, Err               ! 忽略小屏幕导致的错误。
   ...

! 确定哪些电路板被选中/取消选中。

select boards on panel BoardSet(*)
   ...

for I = 1 to Number_Boards_On_Panel
   if BoardSet(I) then
      Status(I) = Passed
   else
      Status(I) = Xed_Out          ! 'Xed_Out' = 取消选择的电路板。
   end if
next I
   ...

test "u1" on boards BoardSet(*)
   ...

! 面板测试完成后,以下例程会将选中的

! 电路板以绿色(通过)或红色(失败)突出显示:

   for I = 1 to Number_Boards_On_Panel

board number is I

  if Status(I) <> Xed_Out then     ! 'Xed_Out' = 取消选择的电路板。
    if boardfailed then
      board graphics highlight fail board I, Err   ! 忽略小屏幕导致的错误。
      ...
    else
      board graphics highlight pass board I, Err   ! 忽略小屏幕导致的错误。
    end if
  end if
next I

 
仅限多路复用系统:由于 select boards on panel 语句需要操作员干预,因此在自动生产线中使用电路板传送器时不能使用。相反,您可以调用一个自定义子程序来确定应测试哪些电路板,如下所示:

if Using_Board_Handler then
   if Using_Pass_Through then
      call Get_Boards_To_Test_On_Panel     ! 调用用户编写的子程序,它
   else                                    ! 指定要测试的电路板。
      select boards on panel BoardSet(*)
   end if
else
   select boards on panel BoardSet(*)
end if

如果系统安装了小型(12 英寸)显示器并且您使用 select boards on panel 语句,则不能使用电路板图形语句。相反,您必须仅使用软键来选择要测试的电路板。

请注意,整数数组包括数组元素零,该元素指的是面板本身。此信息用于数据记录,不受 select boards on panel 语句的影响。

send

send 语句用于向总线发送一系列 GPIB(通用接口总线)命令或数据。

命令(cmd)设置总线线 ATN(注意)为真(0),而数据则设置 ATN 为假(1)。

语法:

复制代码
send <GPIB>;cmd <expression list>
send <GPIB>;data <expression list>
send <GPIB>;cmd <expression list> data <expression list>

其中 <GPIB> 可以是一个 <file id> 或者 @

  • <file id> 是一个 <字符串表达式>
  • <name> 是一个 <标签>

<expression list> 可以是:

  • <expression>

  • <expression>,<expression>

  • <expression>,<expression>, . . . <expression>

    <expression> 可以是数值或字符串。

参数:

<GPIB>

总线的地址。

<expression>

要发送到总线的表达式。

  • 如果表达式是一个变量,它不能是完整的数组;<array id>(*) 不能发送。
  • 如果表达式是数值型,它会被四舍五入为整数,并且仅发送整数的最低八位。
  • 如果表达式是字符串型,它会原样发送。

示例:

快捷方法:

复制代码
send "/dev/hpib1" ; cmd "?U$", "F0R6T1M3E"
assign @Auto to "/dev/hpib1"
send @Auto ; data List$
send @Auto ; cmd Instruction$ data List$

绝对路径方法:

复制代码
Bus$ = btgetenv$("AgilentICT_ROOT")
send Bus$&"/dev/hpib1" ; cmd "?U$", "F0R6T1M3E"
assign @Auto to Bus$&"/dev/hpib1"; read, write, shared
send @Auto ; cmd Instruction$
send @Auto ; data List$
send @Auto ; cmd Instruction$ data List$

一般信息:

这些例子假设设备文件 hpib1 包含 SICL 接口名称 hpib7。

setup test editor

setup test editor 语句调出"设置测试编辑器",这是一个用于为数字测试生成设置测试的图形界面。测试程序员在界面中输入测试数据,界面会以矢量控制语言(VCL)生成设置测试。

sgn

sgn 语句根据参数的符号返回三个值之一。这三个值是:

  • 如果参数 > 0,返回 1
  • 如果参数 = 0,返回 0
  • 如果参数 < 0,返回 -1

语法:

复制代码
sgn (<数值表达式>)

参数:

<numeric expression>

语句的参数。

示例:

复制代码
print sgn(‑18)            ! 打印 ‑1
print sgn(0.00000004)     ! 打印 1
print sgn(0)              ! 打印 0

shorts

shorts 语句清除当前工作区中的所有内容并将工作站设置为短路模式。必须选择此模式才能编辑短路测试文件 "shorts",该文件由 i3070 在线测试软件生成,并存储在待测印刷电路板的测试程序文件中。

在此模式下输入的语句会进行语法检查,以确保它们是有效的短路语句。然而,编辑和其他模式选择语句仍可以在命令行中按通常方式执行。

语法:

复制代码
shorts
shorts;<option>

其中 <option> 可以是:

  • window
  • nowindow

参数:

<option>

可以是 window 或 nowindow。

  • window 在短路模式下打开一个新窗口
  • nowindow 阻止打开新窗口(如果您的测试系统配置为每当指定模式更改时自动打开新窗口)。

示例:

复制代码
msi "/pc_test/scopes/a9842c"     ! 选择待测电路板
shorts                           ! 设置为 "shorts" 模式
get "shorts"                     ! 也可以用于设置 "shorts" 模式

   !
   ! 在工作区内编辑短路文件
   !

compile "shorts"             ! 重新编译并重新保存到原始文件
basic                        ! 确立 "basic" 模式
shorts;window                ! 打开一个新窗口并将其设置为 "shorts" 模式。

softkey

每个软键(位于键盘顶部)都有一个系统默认定义。然而,通过 softkey 语句您可以更改任意软键的定义。

该语句允许您指定一个特定的软键并输入一个(新的)定义。您还可以将其识别为立即执行或文本型软键。立即执行软键在按下键时立即执行其定义。

文本型软键在您按下按键时,会在屏幕上的待处理行中插入其定义。最后,softkey 语句允许您输入一个标签,以便为新定义显示在屏幕上。

新定义会在本地存储,直到使用 softkeys to 或 softkeys over 语句保存它们。

语法:

复制代码
softkey <key>,<process>,<label>
softkey <key>,<process>,<label>,<definition>
softkey <key>,<process>,<label>,,<error variable>
softkey <key>,<process>,<label>,<definition>,<error variable>

其中 <key> 是一个 <数值表达式>

<process>, <label>, 和 <definition><字符串表达式>

<error variable> 是一个 <数字变量>

参数:

<key>

识别某个特定软键(如 f1, f2 等)的数值表达式。经过四舍五入后,必须为 1 至 8 之间的数字。

<process>

识别定义类型的字符串表达式:立即执行或者文本型。必须以 e、r 或 t 开头(去除前导空格后)以指定三种类型之一:

  • e -- 定义字符串是可执行的 BT-Basic 命令(立即执行)。如果光标不在命令行,按键时会被放置在命令行。定义会被输入并执行。若光标最初在工作区,执行后会返回。
  • t -- 定义字符串为文本型。按键时,定义在当前光标位置输入。按键后光标停留在字符串末端。
  • r -- 定义字符串为文本型。按键时,定义在当前光标位置输入。然而,与 t 不同,字符串输入后会发出回车。

<label>

定义软键标签的字符串表达式。去除结尾空格后,不能超过 16 个字符。标签在屏幕上显示为两行,上下行各占 8 个字符。输入标签时需考虑适当间隔。

<definition>

定义软键的字符串表达式。可以是可执行的 BT-Basic 命令或文本字符串。可包含最多 256 个可打印字符。

<error variable>

错误变量的标识符。

示例:

复制代码
softkey 2,"e"," Resave File ","re‑save"
softkey 4,"t","Reminder","Adjust pot to defined value"

软键定义可用于测试监控模式和程序监控模式。在测试监控模式下,只能调用子程序、执行单个命令或者加载和运行新程序。不能继续测试程序或跳转到标签。

softkey clear

如果您重新定义了软键,可以使用 softkey clear 语句重新选择任意软键的系统默认定义。

此语句会将指定软键重新定义为其默认定义,而不影响其他软键。然而,此更改仅在本地生效,您必须使用 softkeys to 或 softkeys over 语句保存更改以使其永久生效。

语法:

复制代码
softkey clear <key>
softkey clear <key>,<error variable>

其中 <key> 是一个 <数值表达式>

<error variable> 是一个 <数字变量>

参数:

<key>

识别您希望选择其系统默认定义的软键。数值表达式在四舍五入后必须为 1 到 8 之间的数字。

<error variable>

错误变量的标识符。

示例:

复制代码
softkey clear 3     ! 将 f3 重置为其默认定义。

要将所有软键全局重新定义为其默认定义,请执行 softkeys clear 语句。

softkeys

在通过 softkeys to 或 softkeys over 语句保存了新的软键定义后,softkeys 语句会激活这些定义并显示其标签。

语法:

复制代码
softkeys <file id>

softkeys <file id>,<error variable>

其中 <file id> 是一个 <字符串表达式>

<error variable> 是一个 <数字变量>

参数:

<file id>

包含用户定义的软键定义的文件标识符。

<error variable>

错误变量的标识符。

示例:

复制代码
softkeys "/board/softkeys1"

softkeys "softkeys2"

softkeys clear

翻译:

如果您重新定义了软键,可以使用 softkeys clear 语句一次性全局重新选择所有软键的系统默认定义。然而,该更改是本地的,您必须使用 softkeys tosoftkeys over 语句保存更改以使其永久生效。

语法

sh 复制代码
  softkeys clear
  softkeys clear,<error variable>

eg:

复制代码
  softkeys clear          ! 将所有软键重置为默认定义
  softkeys clear, Err     ! 包含一个错误变量

要将个别软键重新定义为其默认定义,执行 softkey clear 语句。

softkeys off

softkeys off 语句将用户自定义的软键切换为系统默认的软键定义。有关此语句的描述,请参阅 softkeys on & off (BT-Basic)

softkeys on/off

如果选择了新的软键定义,您可以通过 softkeys onsoftkeys off 语句在新的定义和默认定义之间编程切换。

softkeys on 语句将从默认定义切换到当前用户定义。

如果没有定义用户软键,则会发生运行时错误。如果用户软键已经处于激活状态,则不会发生任何操作。

softkeys off 语句将从用户定义切换到默认定义。如果系统默认值已经处于激活状态,则不会采取任何操作。

语法

复制代码
  softkeys on
  softkeys on <error variable>
  softkeys off

请注意,您可以使用键盘上的 escape + tab 序列在用户定义和默认定义之间切换。

该序列能够在用户定义与默认值之间立即切换。

softkeys over

softkeys over 语句用于将用户定义的软键定义写入已有文件中。有关此语句的描述,请参阅 softkeys to & over (BT-Basic)

softkeys to/over

使用 softkey 语句定义软键后,它们会被存储在本地。要将它们保存到一个文本文件中,您必须使用 softkeys tosoftkeys over 语句。

softkeys to 语句将软键定义写入指定文件。然而,该文件必须不存在,否则会发生运行时错误。softkeys over 语句则将定义写入指定文件,无论其是否存在。如果文件存在,它将被覆盖,之前的内容会丢失。

语法

复制代码
  softkeys to <file id>
  softkeys to <file id>,<error variable
  softkeys over <file id>

  softkeys over <file id>,<error variable>
     <file id> is a <string expression>
     <error variable> is a <numeric variable>

eg:

复制代码
  softkeys to "softkeys1"
  softkeys over "/board/sdevs"

如果需要,您可以从头开始以文本模式创建一个软键定义文件。或者,您可以编辑现有文件。包含软键定义的文本文件格式如下:

1第一行在第一列包含一个单数字符,表示保存了多少个软键定义。

2每个软键定义包含以下五行:

• 第1行 -- 第一列包含软键编号,第3-10列包含进程,第11、12和13列包含定义字符串的长度(多少个字符),第15列开始为标签。

• 第2、3、4行 -- 每行包含定义字符串的80个字符。

• 第5行 -- 包含定义字符串的最后16个字符。

如果软键定义字符串较短,第3到第5行的全部或部分可以为空。例如,如果整个软键定义字符串可以放在第2行,则第3到第5行为空。

一个示例软键定义文件如下所示:

复制代码
  2
  1 E        007 Resave File
  re-save
     .(3行空行)
  2 T        027 Reminder
  Adjust pot to defined value

在使用 softkeys 语句加载这个文件后,软键 f1 的标签显示为 "Resave File",按下软键执行重新保存操作。软键 f2 的标签显示为 "Reminder",按下软键后,会在命令行上放置文本 "Adjust pot to defined value" 作为输入帮助。如果需要,您可以从头开始以文本模式创建一个软键定义文件。或者,您可以编辑现有文件。

special aux_

在执行某些 BT-Basic 命令(例如 run、stop、abort、start 和 wait for start)时,辅助继电器会自动断开。为了防止在这些命令执行时辅助继电器断开,可以将其声明为"特殊"的。

使用表 S-3 中的命令来指定和控制特殊辅助继电器。注意以下几点:

  • special auxconnectspecial auxdisconnect 必须用于特殊辅助继电器。如果它们用于:

    • 尚未声明为特殊的辅助继电器,或
    • 已经清除特殊设置的辅助继电器,会导致错误。
  • 不能使用 auxconnectauxdisconnect 命令控制特殊辅助继电器。

  • 以下命令序列会导致错误;在设置特殊之前,必须先断开 aux 1:

    复制代码
    auxconnect 1 
    special aux set 1 
  • 以下命令序列打开了 aux 1 并将其设置回正常状态:

    复制代码
    special auxconnect 1 
    special aux clear 1 

语法

表 S-3

特殊辅助继电器命令

命令 描述
special aux set 将系统卡上的指定辅助继电器声明为特殊继电器。
special aux clear 清除指定辅助继电器的特殊设置。
special aux clear all 清除所有辅助继电器的特殊设置。
special auxconnect 关闭系统卡上指定的特殊辅助继电器。1
special auxconnect all 关闭系统卡上的所有特殊辅助继电器。1
special auxdisconnect 打开系统卡上指定的特殊辅助继电器。1
special auxdisconnect all 打开系统卡上的所有特殊辅助继电器。1

可以是: 或 , , ... ,

可以是:1,2,3...9

1.这些辅助继电器不能在测试头配置文件中指定为真空端口。

spoll

翻译:

spoll(串行轮询)语句执行GPIB总线的串行轮询,并返回一个表示所选设备状态的值。

返回的值是一个(十进制)整数,其低八位是被寻址设备的状态字节。位状态的实际解释是依赖于设备的。

语法

复制代码
spoll (<GPIB设备>)

<GPIB设备> 是一个 <文件标识> 或 @<名称>

  • <文件标识> 是一个 <字符串表达式>
  • <名称> 是一个 <标签>

参数

<GPIB设备>

所选GPIB设备的地址。返回的值是一个(十进制)整数,其低八位是来自设备的状态字节。

示例

快捷方法:

复制代码
A = spoll ("/dev/dmm")

assign @DVM to "/dev/dmm"

Q = spoll (@DVM)

print Q  ! 如果 Q = 41,字节为 00101001

绝对路径方法:

复制代码
Bus$ = btgetenv$("AgilentICT_ROOT")

A = spoll (Bus$&"/dev/dmm")

assign @DVM to Bus$&"/dev/dmm"

Q = spoll (@DVM)

print Q  ! 如果 Q = 41,字节为 00101001

一般信息

这些示例假设 dev 文件 hpib1 包含 SICL 接口名称 hpib7。

spmc

翻译:

spmc 语句用于配置和控制ASRU Revision N卡上的电源监控电路(PMC)。PMC提供三个通道,用于在数字测试期间检测和报告电源故障。每个通道可以设置不同的电压限制。

语法

复制代码
spmc <通道>, <电压限制>     ! 打开并配置PMC的一个通道

   <通道> 是一个 <整数>

   <电压限制> 是一个 <数值表达式>

spmc <通道>, off             ! 关闭通道的故障标志

spmc <off/reset>             ! 关闭或重置所有通道的故障标志

spmc interrupt <on/off>      ! 设置所有通道的中断开或关

参数

<通道>

通道号从1到12。参见表S-4。

<电压限制>

表明电源故障的电压限制。有效范围是1.0 V到50 V。

表S-4

PMC通道号码

模块 引脚173--174 引脚175--176 引脚177--178
模块 3 1 2 3
模块 2 4 5 6
模块 1 7 8 9
模块 0 10 11 12

示例

复制代码
spmc 2, 3.3          ! 打开PMC的通道2并为通道2设置3.3 V的限制。

spmc 2, off          ! 关闭PMC的通道2。

spmc reset           ! 将所有通道的故障标志重置为0。

spmc off             ! 关闭所有通道的PMC并重置所有故障标志。

spmc interrupt on    ! 打开所有通道的中断。

spmc interrupt off   ! 关闭所有通道的中断。

sps

翻译:

sps 语句设置指定 DUT 电源的工作电压和电流限制。此外,您可以指定一个等待时间以允许所施加的电压稳定;如果不指定等待时间,系统会使用 30 毫秒。sps 语句只能在已加载模式下执行,并且在 cps 语句之后执行(该语句将所有 DUT 电源连接到测试头)。dps 语句断开 DUT 电源。

optimize 关键字通过以下方式提高板测试的吞吐量:

  • 同时开启电源并合并等待时间。
  • 使用 6634 电源的存储/调用功能。

有关优化电源的更多信息,请参阅以下示例。

施加给被测板的电压水平如果等于或超过 60 Vdc,可能会对操作员造成安全隐患。

Keysight ICT 系统中使用的可编程电源能够向被测板提供超过 60 Vdc 的电压。如果向被测板提供 60 Vdc 或以上,安全操作要求安装带有安全联锁装置的夹具盖(请参阅构建板测试夹具)。

如果测试和夹具向被测板上可能因故障或安装错误而爆炸的电气或电子设备供电,您应采取所有必要的安全预防措施来保护板测试操作员。这可能包括安装上述的带联锁夹具盖。

请咨询您的安全官,以确保符合您设施的安全要求。

语法

复制代码
sps <ps_number>,<voltage>
sps <ps_number>,<voltage>; optimize
sps <ps_number>,<voltage>, <options>
sps <ps_number>,<voltage>, <options>; optimize
  • <ps_number> 是一个从 1 到 32 的 <整数>

  • <options> 可以是: <limit> <wait> <limit>, <wait>

    <wait> 是 wa <时间>

  • <voltage>, <limit>, 和 <time> 是 <数值表达式>

参数

<ps_number>

标识电源的整数(1 到 32)。

指定电源的电压输出 (V)。范围取决于选择的电源。

指定电源的最大允许电流输出 (A)。范围取决于电源。默认值是 1 A。

设置一个等待时间以让所施加的电压稳定。 定义等待时间,以秒为单位。等待时间范围是 0 到 9.999 秒,默认是 30 毫秒。

示例

将 DUT 电源编号六设置为五伏和一安培电流限制:

复制代码
cps

sps 6,5,1,wa 200m; optimize

同时打开电源 1、2 和 3,并等待 30 毫秒。

复制代码
sps 1, 4; optimize
sps 2, 5; optimize
sps 3, 10; optimize

同时打开电源 1、2 和 3,并等待 50 毫秒。

复制代码
sps 1, 4; optimize
sps 2, 5, wa 50m; optimize
sps 3, 10; optimize

同时打开电源 1 和 2,等待 30 毫秒,然后打开电源 3 并等待 50 毫秒,最后同时打开电源 4 和 5 并等待 30 毫秒。

复制代码
sps 1, 4; optimize
sps 2, 5; optimize
sps 3, 5, wa 50m
sps 4, 20; optimize
sps 5, 20; optimize

status

翻译:

status 语句用于读取用于RS-232操作的文件或字符设备的状态信息。状态信息存储在寄存器中,这些寄存器的值由控制语句写入并由状态语句读取。当执行状态语句时,它将状态信息返回到语句变量列表中指定的一个或多个变量中。

语法

复制代码
status <source>; <numeric variable list>

status <source>, <register #>; <numeric variable list>

可以是:

  • @<名称>
  • <文件标识>

<名称> 是一个 <标签>

<文件标识> 是一个 <字符串表达式>

<register #> 是一个 <数值表达式>

可以是:

  • <数值变量>
  • <数值变量>, <数值变量>
  • <数值变量>, <数值变量>, ... <数值变量>

参数

要查询的文件或字符设备;您不能使用status语句查询块设备。

<register #>

一个从1到13或17的整数,用于标识要读取的控制寄存器,每个寄存器控制串行数据传输的某方面。

寄存器中的值会传递给 中指定的数量不等的 ,从第一个指定的 <register #> 开始;参见下面的示例。如果没有为 <register #> 指定值,默认值为1。

寄存器编号及其语句见表S-5。这些寄存器对应于标准的HP-UX termio定义。

用于存储返回的寄存器值的变量列表。由于status语句可以读取14个寄存器(1-13和17),此列表不得包含超过14个变量。

表S-5

寄存器

寄存器编号 语句
1 指定基本终端输入控制;对应于termio中的c_iflag。
2 指定输出的系统处理;对应于termio中的c_oflag。
3 指定终端的硬件控制;对应于termio中的c_cflag。
4 指定行规程如何控制终端语句;对应于termio中的c_lflag。
5 指定行规程;对应于termio中的c_line。
6 定义哪个特殊字符生成中断信号;默认为DEL(ASCII 16)。
7 定义哪个特殊字符生成退出信号;默认为FS(ASCII 28)。
8 定义哪个特殊字符擦除前一个字符;默认为#(ASCII 35)。
9 定义哪个特殊字符删除整行(以NL、EOF或EOL字符界定);默认为@(ASCII 64)。
10 定义哪个特殊字符表示文件结束(EOF);默认为EOT (^D 或 ASCII 4)。
11 定义哪个特殊字符表示行结束(EOL);默认为NUL(ASCII 0)。
12 (保留)
13 定义SWTCH字符;默认为NUL(ASCII 0)。
17 这个寄存器不能被写入。指定这个寄存器的status语句将返回从终端设备立即可读的字符数量;对应于termio中的ioctl FIONREAD命令。

示例

复制代码
assign @Terminal to "/dev/tty3"        ! 将 @Terminal 关联到设备 tty3

control @Terminal, 3; oti ("1000")     ! 设置RS-232端口;1200波特率

status @Terminal, 3; Status            ! 读取RS-232端口的状态

print ito$ (Status)                    ! 打印1000

status @RS232; A, B, C, D              ! 返回寄存器1、2、3、4的状态

status @RS232, 8; A, B, C              ! 返回寄存器8、9、10的状态

一般信息

使用控制语句将值写入status读取的寄存器。

注意,控制语句实际上可以写入17个寄存器。然而,status语句只能返回17个寄存器中的14个寄存器(1到13和17)的状态。有关其他寄存器的信息,请参阅控制语句的描述。

stop

翻译:

stop 语句用于停止并中止一个程序。一旦停止,程序无法继续;必须重新运行。

如果在子程序中执行了 stop 语句,将退出所有级别的子程序,并停止主程序。

如果程序在停止时正在控制测试头,则发生以下事件:

  1. 被测设备的电源供应被断开。
  2. 夹具的真空被关闭。
  3. 所有测试头模块被初始化。
  4. 所有通用和辅助继电器被打开。
  5. 所有功能(通电)和在线(未通电)测试被禁止。

语法

复制代码
stop

参数

(无)

示例

复制代码
if Err=1 then \ print "TEST FAILED" \ stop \ end if

print "TEST PASSED"

一般信息

如果程序被暂停,可以继续。有关详细信息,请参阅 pausecont 语句。

store

翻译:

标题:将工作区的内容存储在一个新文件中

store 语句创建一个ASCII文件,并将当前在工作区中的行存储到该文件中。工作区保持不变。在执行此语句之前,该文件必须不存在。

如果未指定模式,则工作区的当前模式会被记录到文件中。如果指定了模式,它必须与工作区的当前模式相同,或者是文本模式。如果指定了文本模式,则不论工作区的当前模式为何,文件中记录的都是文本模式。

语法

复制代码
store <file id>

store <file id>,<parameters>

store <mode> <file id>

store <mode> <file id>,<parameters>
  • <file id> 是一个 <字符串表达式>

  • <mode> 可以是:

    • analog
    • basic
    • configuration
    • digital
    • pins
    • safeguard
    • shorts
    • states
    • testorder
    • text
    • wirelist
  • <parameters> 可以是:

    • <first line>

    • <first line>,<last line>

    • <first line>,<last line>,<error variable>

    • <first line>,,<error variable>

    • ,<last line>

    • ,<last line>,<error variable>

    • ,,<error variable>

    • <first line> 是一个 <数字常量>

    • <last line> 是一个 <数字常量>

    • <error variable> 是一个 <数字变量>

如果省略一个中间参数,而包含了后续参数,语法要求用逗号分隔。

参数

要创建的新文件的标识符。它必须不存在,并且不能代表设备。

要记录在文件中的模式。

一个正整数,指定要在文件中保存的第一行的编号。该行必须存在于工作区中。如果省略此参数,则默认为工作区的第一行。

一个正整数,指定要在文件中保存的最后一行的编号。工作区中随后的任何行会被忽略。如果省略此参数,则默认为工作区的最后一行。

如果指定的 超出工作区的最后一行,则假定为现有的最后一行。

必须等于或大于要保存的第一行的编号。

错误变量的标识符。

示例

复制代码
store "/market/ts/my‑file"         ! 存储工作区中的所有行

msi "/production/test/a3564b"

store "report1", 25                ! 存储第25行到工作区结尾的行

store "report2", 62,136            ! 存储第62行至第136行

store "report3",,, Alpha           ! 存储所有行,指定错误变量

                                   ! ‑ 注意 "place‑saving" 的逗号

store text "board‑47/shorts1",2,4,Err

一般信息

storesave 语句是相同的。

subexit

subexit 语句用于从子程序退出并返回到子程序的调用点:

  • 对于 callon - call,返回到调用该子程序的语句的后续语句
  • 对于 on break callon error call,返回到调用子程序时正在执行的那行的开头

一个子程序可以包含任意数量的 subexit 语句。

相关推荐
forestsea几秒前
Java并发编程面试题:锁(17题)
java·开发语言
寒雪谷4 分钟前
用户登陆UI
开发语言·javascript·ui·harmonyos·鸿蒙
努力学习的小廉7 分钟前
【C++】 —— 笔试刷题day_17
开发语言·c++
CP-DD31 分钟前
C/C++ 通用代码模板
c语言·开发语言·c++
李少兄36 分钟前
【Java基础】Java集合遍历方式
java·开发语言·windows
King.62440 分钟前
SQL2API 核心理念:如何重构数据服务交付范式
大数据·开发语言·数据库·人工智能·sql·lua
薯条不要番茄酱1 小时前
【JavaEE初阶】多线程重点知识以及常考的面试题-多线程进阶(二)
java·开发语言·java-ee
User_芊芊君子1 小时前
Java与C在典型场景下的性能对比深度剖析
java·c语言·开发语言
珹洺2 小时前
JSP技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统
java·开发语言·前端·html·intellij-idea·jsp
·醉挽清风·4 小时前
学习笔记—C++—模板初阶
开发语言·c++·笔记·学习