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' 的对象。