info

Получите совокупное переполнение и недогрузку

Синтаксис

Описание

пример

S = info(asyncBuff) возвращает структуру, S, содержа совокупное переполнение и информацию о недогрузке dsp.AsyncBuffer Система object™, asyncBuff.

Примеры

свернуть все

dsp.AsyncBuffer Система object™ форматы кадра переменной чтения поддержек от буфера.

Создайте dsp.AsyncBuffer Системный объект. Вход является белым Гауссовым шумом со средним значением 0, стандартным отклонением 1 и форматом кадра 512 выборок. Запишите вход в буфер с помощью write метод.

asyncBuff = dsp.AsyncBuffer;
input = randn(512,1);
write(asyncBuff,input);
plot(input)
hold on

Figure contains an axes object. The axes object contains an object of type line.

Храните данные, которые считаны из буфера в outTotal.

Постройте входной сигнал и данные, которые считаны из буфера в том же графике. Считайте данные из буфера, пока все выборки не будут считаны. В каждой итерации цикла, randi определяет количество отсчетов, чтобы читать. Поэтому сигнал читается в как сигнал переменного размера. prevIndex переменная отслеживает предыдущее значение индекса, которое содержит данные.

outTotal = zeros(size(input));
prevIndex = 0;
while asyncBuff.NumUnreadSamples ~= 0
    numToRead = randi([1,64]);
    out = read(asyncBuff,numToRead);
    outTotal(prevIndex+1:prevIndex+numToRead) = out;
    prevIndex = prevIndex+numToRead;
end
plot(outTotal,'r')
hold off

Figure contains an axes object. The axes object contains 2 objects of type line.

Проверьте, что входные данные и данные, считанные из буфера (исключая выборки недогрузки, если таковые имеются), являются тем же самым. Совокупное число превышенных и выборок недогрузки в буфере определяется info функция.

S = info(asyncBuff)
S = struct with fields:
     CumulativeOverrun: 0
    CumulativeUnderrun: 28

CumulativeUnderrun поле показывает недогрузку количества отсчетов на канал. Недогрузка происходит, при попытке считать больше выборок, чем доступный.

Входные параметры

свернуть все

Асинхронный буфер в виде dsp.AsyncBuffer Системный объект.

Выходные аргументы

свернуть все

Совокупное переполнение и информация о недогрузке, возвращенная как структура. Поля для S описаны в таблице.

Поле Значение
CumulativeOverrun

Количество отсчетов превышается на канал начиная с последней возможности к reset. Превышенное количество отсчетов является количеством непрочитанных перезаписанных выборок.

CumulativeUnderrun

Недогрузка количества отсчетов на канал начиная с последней возможности к reset. Недогрузка происходит, при попытке считать больше выборок, чем доступный.

CumulativeOverrun и CumulativeUnderrun свойства являются типом данных int32.

Смотрите также

Функции

Объекты

Введенный в R2017a