instrfindall
(将删除)查找可见和隐藏的串行端口对象
此 serial
对象函数将在以后的版本中删除。请改用 serialport
对象函数。有关更新代码的详细信息,请参阅兼容性考虑。
语法
out = instrfindall
out = instrfindall('P1
',V1,...)
out = instrfindall(s)
out = instrfindall(objs,'P1
',V1,...)
说明
out = instrfindall
查找所有串行端口对象,而不管对象的 ObjectVisibility
属性为何值。该对象或对象集合将返回到 out
。
out = instrfindall('
返回属性名称和对应的属性值与指定为参数的项匹配的串行端口对象数组 P1
',V1,...)out
。
out = instrfindall(s)
返回属性名称和对应的属性值与结构体 s
中指定的项匹配的串行端口对象数组 out
,其中字段名称与属性名称对应,字段值与各个属性的当前值对应。
out = instrfindall(objs,'
将具有匹配的属性名称/属性值对组的对象搜索限制为 P1
',V1,...)objs
中列出的串行端口对象。
请注意,您可以在对 instrfindall
的相同调用中使用字符串属性名称/属性值对组、结构体和元胞数组属性名称/属性值对组。
示例
假定您在 Windows® 平台上创建以下串行端口对象:
s1 = serial('COM1'); s2 = serial('COM2'); set(s2,'ObjectVisibility','off')
由于对象 s2
的 ObjectVisibility
设置为 'off'
,因此该对象对 instrfind
等对象不可见:
instrfind
Serial Port Object : Serial-COM1
但是,instrfindall
会查找所有对象,而不管 ObjectVisibility
为何值:
instrfindall
Instrument Object Array Index: Type: Status: Name: 1 serial closed Serial-COM1 2 serial closed Serial-COM2
以下语句使用 instrfindall
返回具有特定属性设置(以元胞数组形式传递)的对象:
props = {'PrimaryAddress','SecondaryAddress}; vals = {2,0}; obj = instrfindall(props,vals);
当您要将 instrfindall
命令应用于所有可见和不可见的对象时,可以将该命令用作一个参数。例如,以下语句将所有对象设置为可见:
set(instrfindall,'ObjectVisibility','on')
提示
instrfindall
与 instrfind
不同,因为它会查找 ObjectVisibility
属性设置为 off
的对象。
属性值区分大小写。您必须使用与 get
函数返回格式相同的格式来指定属性值。例如,如果 get
返回 Name
属性值为 'MyObject'
,则 instrfindall
将不会查找 Name
属性值为 'myobject'
的对象。但是,这不适用于具有一组有限字符串值的属性的情况。例如,instrfindall
将查找 Parity
属性值为 'Even'
或 'even'
的对象。