Тестировать пользовательские rtiostream реализация интерфейса
rtiostreamtest( запускает набор тестов для проверки пользовательского connection, parameterOne, parameterTwo, verbosityFlag)rtiostream реализация интерфейса.
rtiostreamtest('tcp', host, port), через связь TCP/IP, подключает MATLAB ® к оконечному оборудованию с помощью указанногоhost и port.
rtiostreamtest('serial', port, baud), через последовательную связь, подключает MATLAB к целевому аппаратному обеспечению с помощью указанного port и baud значение.
Во время инициализации функция использует основные rtiostream ВВОД/ВЫВОД Функция определяет:
Порядок байтов данных на целевом оборудовании.
Гранулярность адреса памяти.
Размер типов данных.
Ли rtIOStreamRecv блоки, то есть, когда нет данных, rtIOStreamRecv ожидает данных или возвращается немедленно с полученным размером == 0.
Размер (BUFFER_SIZE) его внутреннего буфера для приема или передачи данных через rtiostream. Значение по умолчанию - 128 байт.
В Test 1 (fixed size data exchange), функция:
Данные проверки могут быть отправлены и получены правильно в различных размерах блоков. Размеры блоков для компьютера разработки и целевого оборудования симметричны.
Отправляет данные в виде известной последовательности, которую он может проверить.
Выполняет тесты «хост-компьютер-цель». Компьютер разработчика отправляет данные, а оконечное оборудование получает данные в виде последовательных блоков размером 1, 4 и 128 байт.
Выполняет тесты «цель-хост». Оконечное оборудование отправляет данные, а компьютер разработчика получает данные в виде последовательных блоков размером 1, 4 и 128 байт.
В Test 2 (varying size data exchange), функция:
Проверка правильности отправки и получения данных в различных размерах блоков. Размеры блоков для компьютера разработки и целевого оборудования асимметричны.
Отправляет данные в виде известной последовательности, которую он может проверить.
Выполняет тесты «хост-компьютер-цель»:
Компьютер разработчика отправляет данные частями по 128 байт, а оконечное оборудование получает данные частями по 64 байта.
Компьютер разработки отправляет данные порциями по 64 байта, а оконечное оборудование получает данные порциями по 128 байтов.
Выполняет тесты «цель-хост»:
Оконечное оборудование отправляет данные порциями по 64 байта, а компьютер разработчика получает данные порциями по 128 байтов.
Оконечное оборудование отправляет данные частями по 128 байт, а компьютер разработчика получает данные частями по 64 байта.
В Test 3 (receive buffer detection), функция определяет данные, которые она может хранить между вызовами rtIOStreamRecv на целевом оборудовании. Функция использует итеративный процесс:
Компьютер-разработчик передает последовательность данных, пока целевое оборудование спит. rtIOStreamRecv не вызывается, пока оконечное оборудование находится в состоянии ожидания.
Когда оконечное оборудование пробуждается, оно вызывает rtIOStreamRecv для приема данных из внутреннего буфера драйвера.
Функция определяет, был ли переполнен внутренний буфер путем проверки ошибок и проверки полученных значений данных.
Если ошибок переполнения нет и переданные данные приняты правильно, функция запускает другую итерацию, выполняя этап 1 с большей последовательностью данных.
Функция сообщает размер последнего известного хорошего буфера.
rtiostream Внедрение интерфейсаНабор тестов состоит из двух частей. Одной из частей набора тестов является приложение, работающее на целевом оборудовании. Другая деталь выполняется в MATLAB.
Чтобы создать целевое приложение, скомпилируйте и свяжите эти файлы:
rtiostream расследуемое осуществление, например, rtiostream_tcpip.c.
rtiostreamtest.c, rtiostreamtest.h, и main.c расположены в .matlabroot/toolbox/coder/rtiostream/src/rtiostreamtest
Загрузите и запустите приложение на целевом оборудовании.
Для запуска части MATLAB набора тестов вызовите rtiostreamtest функция. Например:
rtiostreamtest('tcp','myProcessor','2345')
Функция выдает выходные данные следующим образом:
### Test suite for rtiostream ### Initializing connection with target... ### Hardware characteristics discovered Size of char : 8 bit Size of short : 16 bit Size of int : 32 bit Size of long : 32 bit Size of float : 32 bit Size of double : 64 bit Size of pointer : 64 bit Byte ordering : Little Endian ### rtiostream characteristics discovered Round trip time : 0.25098 ms rtIOStreamRecv behavior : non-blocking ### Test results Test 1 (fixed size data exchange): ......... PASS Test 2 (varying size data exchange): ......... PASS ### Test suite for rtiostream finished successfully ###
Функция также генерирует профиль средней пропускной способности.
