addSource

Добавьте источник входа к сеансу записи данных

Описание

пример

addSource(dr,src,sourceName) добавляет указанный аппаратный входной источник, src к сеансу записи данных, dr. dr - сеанс записи данных на аппаратную плату SoC, созданный с помощью soc.recorder.

Примеры

свернуть все

Создайте подключение от MATLAB к указанной аппаратной плате SoC с помощью IP-адреса, имени пользователя и пароля платы.

hw = socHardwareBoard('Xilinx Zynq ZC706 evaluation kit','hostname','192.168.1.18','username','root','password','root');

Создайте сеанс записи данных на аппаратной плате SoC с помощью hw объект. Результат soc.recorder объект представляет сеанс записи данных на аппаратной плате SoC.

dr = soc.recorder(hw)
dr = 

  DataRecorder with properties:

          HardwareName: 'Xilinx Zynq ZC706 evaluation kit'
               Sources: {}                            
             Recording: false                         

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

dr.Sources(hw)
ans =

  1×0 empty cell array                       

По умолчанию soc.recorder у объектов нет добавленных источников входа. Чтобы добавить источник входа к сеансу записи данных, сначала создайте объект источника входа с помощью soc.iosource функция. В данном примере создайте исходный объект протокола UDP.

udpSrc = soc.iosource(hw,'UDP Receive')
udpSrc = 

  soc.iosource.UDPRead with properties:

   Main
              LocalPort: 25000
             DataLength: 1
               DataType: 'uint8'
      ReceiveBufferSize: -1
           BlockingTime: 0
    OutputVarSizeSignal: false
             SampleTime: 0.1000
         HideEventLines: true

  Show all properties

Добавьте этот исходный объект UDP к сеансу записи данных с помощью addSource функция объекта.

addSource(dr,udpSrc,'UDPDataReceived-Port25000')

Проверьте результат путем проверки Sources свойство soc.recorder объект.

dr.Sources
ans =

  1×1 cell array

    {'UDPDataOnPort25000'}                        

Вызовите функцию настройки, чтобы инициализировать все аппаратные периферийные входные источники, добавленные к сеансу записи данных, и начать процесс записи данных.

setup(dr)

Запись данных в течение 60 секунд на аппаратную плату SoC.

record(dr, 60);

Проверьте состояние сеанса записи данных при помощи isRecording функция объекта. Состояние записи при прогрессе записи данных 1.

recordingStatus = isRecording(dr)
recordingStatus =

  logical

   1

Состояние записи после завершения записи данных 0.

isRecording(dr)
recordingStatus =

  logical

   0

Сохраните записанные данные в сжатый TGZ файл.

save(dr,'UDPDataReceived','UDP Data Testing',{'Recorded On Zynq Board'})

Эта функция сохраняет записанные данные как файл UDPDataReceived.tgz в рабочей папке хост-компьютера. Вы можете считать этот файл, используя socFileReader объект в MATLAB™ или IO Data Source блоке в Simulink® модель.

Удалите добавленный источник из сеанса записи данных с помощью removeSource функция объекта.

removeSource(dr,'UDPDataReceived-Port25000')

Проверьте результат путем проверки Sources свойство soc.recorder объект.

ans =

  1×0 empty cell array                       

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

свернуть все

Сеанс записи данных для указанной аппаратной платы СнК, заданный как soc.recorder объект.

Исходный объект для заданного входного источника, заданный как soc.iosource объект.

Имя источника входа в сеансе записи данных в виде вектора символов. Функция использует это имя как имя источника, когда указанный входной источник записан и сохранен в файле набора данных.

Примечание

Настройка sourceName на 'all' ошибки как sourceName 'all' используется для удаления всех входных источников, добавленных к сеансу записи данных, используя removeSource функция.

Введенный в R2019a