Добавьте входной источник в сеанс записи данных
addSource(dr,src,sourceName)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 в вашей рабочей папке PC хоста. Можно считать этот файл при помощи объекта socFileReader в MATLAB™ или блока IO Data Source в модели Simulink®.
Удалите добавленный источник из сеанса записи данных при помощи функции объекта removeSource.
removeSource(dr,'UDPDataReceived-Port25000')
Проверьте результат путем осмотра свойства Sources объекта soc.recorder.
ans = 1×0 empty cell array
dr — Сеанс записи данных задан для аппаратной платы SoCsoc.recorderСеанс записи данных для заданной аппаратной платы SoC, заданной как объект soc.recorder.
src Исходный объект для заданного входного источникаsoc.iosourceИсходный объект для заданного входного источника, заданного как объект soc.iosource.
sourceName — Имя входного источника на сеансе записи данныхИмя входного источника на сеансе записи данных, заданном как вектор символов. Функция использует это имя в качестве исходного имени, когда заданный входной источник зарегистрирован и экономится файл набора данных.
При установке sourceName на ошибки 'all', когда
'all' sourceName используется, чтобы удалить все входные источники, добавленные к сеансу записи данных с помощью функции removeSource.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.