主要内容

dsp。延迟

通过固定的采样延迟输入信号

描述

请注意

单位属性不再支持金宝app“帧”选择。使用“样本”代替。的InitialConditions属性不再支持单元格数组格式。金宝app使用一个长度——- - - - - -numChans矩阵代替,numChans为输入通道的数量。有关详细信息,请参见兼容性的考虑

dsp。延迟系统对象™通过沿输入的每个通道(列)的指定数量的样本延迟输入。属性指定对象的初始输出InitialConditions财产。若要重置延迟,请启用ResetCondition通过ResetInputPort

延迟输入:

  1. 创建dsp。延迟对象,并设置其属性。

  2. 使用参数调用对象,就像调用函数一样。

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

例子

延迟= dsp。延迟创建一个System对象,将输入延迟1个样本。

例子

延迟= dsp。延迟(名称,值创建一个delay System对象,将每个指定的属性设置为指定的值。将每个属性名用单引号括起来。

例子:延迟= dsp.Delay(“InitialConditionsPerChannel”,真正的);

例子

延迟= dsp。延迟(len,名称,值创建一个delay System对象,延迟,长度属性设置为len,以及设置为指定值的其他指定属性。将每个属性名用单引号括起来。

例子:延迟= dsp。延迟(10,“ResetInputPort”,真正的,'ResetCondition','Rising edge');

属性

全部展开

除非另有说明,属性是nontunable,这意味着您不能在调用对象之后更改它们的值。对象在调用时锁定,而释放函数打开它们。

如果一个属性是可调,您可以随时更改它的值。

有关更改属性值的更多信息,请参见在MATLAB中使用系统对象进行系统设计

延迟单位,指定为“样本”

施加于输入信号的采样延迟量,指定为:

  • 标量正整数——对象对所有通道应用相同的延迟。

  • 正整数向量——向量的长度必须等于输入通道(列)的数量。对象按延迟向量中相应元素指定的数量延迟每个通道。

每个通道启用不同的初始条件,指定为:

  • 对象对所有通道应用相同的初始条件。

  • 真正的——对象对每个通道应用不同的初始条件。

属性的值必须与选择的值相同InitialConditionsPerSample财产。这个值决定初始条件数组的大小。有关详细信息,请参见InitialConditions财产。

每个样本不同的初始条件,指定为:

  • 对象对所有样本应用相同的初始条件。

  • 真正的——对象对每个样本应用不同的初始条件。

属性的值必须与选择的值相同InitialConditionsPerChannel财产。这个值决定初始条件数组的大小。有关详细信息,请参见InitialConditions财产。

System对象的初始输出,指定为标量、向量或矩阵。初始条件矩阵的维数必须为(长度属性值)-by-(输入通道的数量)。

如果输入是——- - - - - -N矩阵的维数InitialConditions属性值必须如下所示:

InputConditionsPerChannel InputConditionsPerSample InitialConditions
标量
真正的 真正的 长度——- - - - - -N矩阵

启用reset条件,以便将reset控制输入传递给指定为either的对象:

  • ——对象不重置延迟状态。

  • 真正的——你必须通过使用对象传递一个重置控制输入ResetCondition财产。对象的值重置延迟状态ResetCondition属性和输入到对象的重置控件。

触发延迟重置的事件,指定为下列事件之一。当在其重置输入中检测到重置事件时,该对象重置延迟。

  • “零”——当重置输入不为零时,在每个样本触发重置操作。

  • “前沿”——当reset输入执行以下操作之一时,触发reset操作:

    • 从负值上升到正值或零。

    • 从零上升到正数,上升不是从负数上升到零的延续。

  • 的下降沿——当reset输入执行以下操作之一时,触发reset操作:

    • 从正数降到负数或零。

    • 从零下降到负数,这里的下降不是从正数下降到零的延续。

  • “要么边缘”——当复位输入是上升沿或下降沿时,触发复位操作。

依赖关系

此属性仅在设置ResetInputPort财产真正的

使用

描述

例子

delayOut=延迟(dataInput将延迟添加到数据输入并返回延迟输出。输入的每一列都被视为一个独立的通道。

例子

delayOut=延迟(dataInputresetInput增加数据输入的延迟,并根据重置输入的值和对象的值选择性地重置System对象的状态ResetCondition财产。

要传递重置输入,请设置ResetInputPort财产真正的

延迟= dsp。延迟(“ResetInputPort”,真正的);...delayOut =延迟(dataInput resetInput);

输入参数

全部展开

被指定为向量或矩阵的对象延迟的数据输入。

例子:[1, 2, 3, 4, 5]

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|fi
复数的支持:金宝app是的

重置指定为标量的输入。

例子:2

数据类型:||int8|int16|int32|uint8|uint16|uint32|逻辑

输出参数

全部展开

延迟输出,作为向量或矩阵返回。输出的大小和数据类型与输入的大小和数据类型相匹配。

例子:(0, 0, 1, 2, 3]

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|fi
复数的支持:金宝app是的

对象的功能

要使用对象函数,请指定System对象作为第一个输入参数。例如,释放名为system的对象的系统资源obj,使用下面的语法:

发行版(obj)

全部展开

一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 使内部状态复位系统对象

例子

全部折叠

通过使用5个样本延迟输入dsp。延迟系统对象™。默认情况下,初始条件为0。

请注意如果你正在使用R2016a或更早的版本,用等价的步骤语法替换每个对象调用。例如,obj(x)变成step(obj,x)。

延迟输入4个样本。

延迟= dsp.Delay (4);Input = [(1:10)' (11:20)'];delayOut =延迟(输入)% #好吧
delayOut =10×20 0 0 0 1 11 2 12 3 13 4 14 5 15 6 16
释放(延迟);

为每个通道和每个样本指定初始条件。的InitialConditions属性必须是长度)——- (NumChannels)矩阵。

延迟。InitialConditionsPerChannel = true;延迟。InitialConditionsPerSample = true;延迟。InitialConditions =[(0.1:0.1:0.4)“(0.5:0.1:0.8)”);delayOut =延迟(输入)% #好吧
delayOut =10×20.1000 0.5000 0.2000 0.6000 0.3000 0.7000 0.4000 0.8000 1.0000 11.0000 2.0000 12.0000 3.0000 13.0000 4.0000 14.0000 5.0000 15.0000 6.0000 16.0000
释放(延迟);

通过设置复位事件来重置延迟“前沿”.在此模式下,当复位输入时发生复位事件:

  • 从负值上升到0。

  • 从负值上升到正值。

  • 从0上升到正数,其中上升不是从负数到0的延续。

传递一个初始的重置输入0。

延迟。ResetInputPort = true;延迟。ResetCondition =“前沿”;delayOut =延迟(输入,0)% #好吧
delayOut =10×20.1000 0.5000 0.2000 0.6000 0.3000 0.7000 0.4000 0.8000 1.0000 11.0000 2.0000 12.0000 3.0000 13.0000 4.0000 14.0000 5.0000 15.0000 6.0000 16.0000

继续运行延迟。延迟样本现在包含输入向量的其余部分。

delayOut =延迟(输入,0)% #好吧
delayOut =10×27 17 8 18 9 19 10 20 1 11 2 12 3 13 4 14 5 15 6 16

将复位输入改为2,表示上升边。

delayOut =延迟(输入,2)
delayOut =10×20.1000 0.5000 0.2000 0.6000 0.3000 0.7000 0.4000 0.8000 1.0000 11.0000 2.0000 12.0000 3.0000 13.0000 4.0000 14.0000 5.0000 15.0000 6.0000 16.0000

延迟值被重置为初始条件。

兼容性的考虑

全部展开

错误开始在R2018a

错误开始在R2018a

扩展功能

介绍了R2012a