主要内容

dsp。延迟

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

描述

请注意

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

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

延迟输入:

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

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

有关系统对象如何工作的详细信息,请参见什么是系统对象?

创建

描述

例子

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

例子

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

例子:delay = dsp.Delay('InitialConditionsPerChannel',true);

例子

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

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

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放功能解锁它们。

如果属性为可调,您可以随时更改其值。

有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计

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

应用于输入信号的采样延迟量,指定为以下之一:

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

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

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

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

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

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

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

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

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

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

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

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

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

启用重置条件,以便您可以将重置控制输入传递给对象,指定为:

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

  • 真正的属性将重置控件输入传递给对象ResetCondition财产。对象根据的值重置延迟状态ResetCondition属性和对象输入的重置控件。

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

  • “零”——当复位输入不为零时,在每个采样点触发复位操作。

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

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

    • 从0上升到一个正值,其中的上升不是从负值上升到零的延续。

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

    • 从正值下降到负值或零。

    • 从0下降到负值,其中下降不是从正值下降到0的延续。

  • “要么边缘”——当重置输入是上升边或下降边时触发重置操作。

依赖关系

属性时才应用此属性ResetInputPort财产真正的

使用

描述

例子

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

例子

delayOut=延迟(dataInputresetInput属性的值,并根据重置输入的值和ResetCondition财产。

要传递重置输入,请使用setResetInputPort财产真正的

Delay = dsp。延迟(“ResetInputPort”,真正的);...delayOut = delay(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个样本。

delay = dsp.Delay(4);Input = [(1:10)' (11:20)'];delayOut =延迟(输入)% #好吧
delayOut =10×20 0 0 0 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
释放(延迟);

通过将Reset事件设置为来重置延迟“前沿”.在此模式下,当重置输入:

  • 从负值上升到0。

  • 从负值上升到正值。

  • 从0上升到一个正值,而不是从负值上升到0的延续。

传递初始重置输入0。

延迟。ResetInputPort = true;延迟。ResetCondition =“前沿”;delayOut = delay(input,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 = delay(input,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 = delay(input,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中引入