comm.BasebandFileReader

Считайте сгенерированные модулированные сигналы из файла

Описание

The comm.BasebandFileReader объект считывает сгенерированный модулированный сигнал из определенного типа двоичного файла, записанного comm.BasebandFileWriter. Сгенерированные модулированные сигналы обычно преобразуются вниз с ненулевой центральной частоты до 0 Гц. The SampleRate и CenterFrequency свойства сохраняются при создании файла. The comm.BasebandFileReader объект автоматически считывает частоту дискретизации, центральную частоту, количество каналов и любые описательные данные и сохраняет их в своих свойствах только для чтения.

Чтобы создать входной сигнал из сохраненного файла основной полосы:

  1. Создайте comm.BasebandFileReader и установите свойства объекта.

  2. Функции step чтобы сгенерировать сгенерированный модулированный сигнал из сохраненных данных.

  3. Функции release чтобы закрыть файл.

Примечание

Кроме того, вместо использования step метод для выполнения операции, заданной Системной object™, можно вызвать объект с аргументами, как если бы это была функция. Для примера, y = step(obj) и y = obj() выполнять эквивалентные операции.

Конструкция

bbr = comm.BasebandFileReader возвращает объект baseband reader, bbr, с использованием свойств по умолчанию.

bbr = comm.BasebandFileReader(fname) возвращает объект baseband reader и устанавливает fname как Filename свойство.

bbr = comm.BasebandFileReader(fname,spf) также устанавливает spf как SamplesPerFrame свойство.

bbr = comm.BasebandFileReader(___,Name,Value) задает дополнительные свойства, используя Name,Value пар. Неопределенные свойства имеют значения по умолчанию.

Пример:

bbr = comm.BasebandFileReader('recorded_data',100);

Свойства

расширить все

Имя считываемого файла baseband, заданное как вектор символов. Задайте абсолютный путь, только если файл отсутствует в MATLAB® путь. Сохранен и отображается только абсолютный путь.

Это свойство доступно только для чтения.

Частота дискретизации сохраненного сгенерированного модулированного сигнала в Гц.

Это свойство доступно только для чтения.

Центральная частота сохраненного сгенерированного модулированного сигнала в Гц. Когда это свойство является вектор-строка, каждый элемент представляет центральную частоту канала в многоканальном сигнале.

Это свойство доступно только для чтения.

Количество каналов сохраненного сигнала сгенерированного модулированного сигнала.

Это свойство доступно только для чтения.

Данные, описывающие сигнал сгенерированного модулированного сигнала. Если файл не имеет описательных данных, это свойство является пустой структурой.

Количество выборок в выходной системе координат, заданное как положительное целое число.

Типы данных: double

Флаг для повторного чтения файла основной полосы частот, заданный как логический скаляр. Чтобы неоднократно считать файл основной полосы частот, заданный Filename, установите это свойство в true.

Методы

информацияХарактеристическая информация о средстве чтения файлов основной полосы частот
Общий для всех системных объектов
release

Разрешить изменение значения свойства системного объекта

step

Сгенерируйте сгенерированный модулированный сигнал из файла

reset

Сброс состояний объекта baseband file reader

isDone

Чтение состояния выборок файлов основной полосы частот

Примеры

свернуть все

Считайте сгенерированный модулированный сигнал из файла с помощью comm.BasebandFileReader Системный объект.

Создайте объект baseband file reader.

bbr = comm.BasebandFileReader('baseband_samples_1ghz.bb')
bbr = 
  comm.BasebandFileReader with properties:

            Filename: '/tmp/BR2021ad_1657350_232851/mlx_to_docbook16/tpb13e16b4/comm-ex87872352/baseband_samples_1ghz.bb'
          SampleRate: 1
     CenterFrequency: 100000000
         NumChannels: 1
            Metadata: [1x1 struct]
     SamplesPerFrame: 100
    CyclicRepetition: false

Используйте info метод получения дополнительной информации о bbr. Файл содержит 10000 выборки типа 'double'. Никаких выборок не было прочитано.

info(bbr)
ans = struct with fields:
    NumSamplesInData: 10000
            DataType: 'double'
      NumSamplesRead: 0

Чтение данных с несколькими вызовами в объект Baseband File Reader

Начиная с NumSamplesPerFrame равен 100, и NumSamplesInData составляет 10000, считывая все содержимое baseband_samples_1ghz<reservedrangesplaceholder0 > файл потребует нескольких вызовов на bbr объект. Этого можно добиться при помощи isDone метод для завершения while цикл.

y = [];

while ~isDone(bbr)
    x = bbr();
    y = cat(1,y,x);
end

Постройте график абсолютной величины данных основной полосы частот.

plot(abs(y))

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

Подтвердите, что все выборки были считаны.

info(bbr)
ans = struct with fields:
    NumSamplesInData: 10000
            DataType: 'double'
      NumSamplesRead: 10000

Общее количество выборок и количество считанных выборок совпадают.

Отпустите ресурсы программы чтения файлов основной полосы.

release(bbr)

Чтение данных с одним вызовом в объект Baseband File Reader

Кроме того, чтобы считать все выборки из файла за один вызов объекта, можно задать выборки на систему координат равным количеству выборок в файле данных.

bbrinfo = bbr.info
bbrinfo = struct with fields:
    NumSamplesInData: 10000
            DataType: 'double'
      NumSamplesRead: 10000

bbr.SamplesPerFrame = bbrinfo.NumSamplesInData
bbr = 
  comm.BasebandFileReader with properties:

            Filename: '/tmp/BR2021ad_1657350_232851/mlx_to_docbook16/tpb13e16b4/comm-ex87872352/baseband_samples_1ghz.bb'
          SampleRate: 1
     CenterFrequency: 100000000
         NumChannels: 1
            Metadata: [1x1 struct]
     SamplesPerFrame: 10000
    CyclicRepetition: false

Теперь прочтите все содержимое baseband_samples_1ghz.bb файл с одним вызовом на bbr объект. Подтвердите, что все выборки были считаны.

xx = bbr();
isequal(y,xx)
ans = logical
   1

info(bbr)
ans = struct with fields:
    NumSamplesInData: 10000
            DataType: 'double'
      NumSamplesRead: 10000

Расширенные возможности

.

См. также

Введенный в R2016b