rtiostreamtest

Тестируйте пользовательские 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), функция:

  • Проверки данных могут быть отправлены и получены правильно в различных размерах фрагментов. Размеры фрагмента для ваших компьютеров разработчика и целевого компьютера симметричны.

  • Отправляет данные как известную последовательность, которую он может проверить.

  • Выполняет тесты «host-to-target». Ваш компьютер разработчика отправляет данные, а ваш целевой компьютер получает данные в последовательных фрагментах 1, 4 и 128 байтов.

  • Выполняет тесты «target-to-hoste». Ваш целевой компьютер отправляет данные, а ваш компьютер разработчика получает данные в последовательных фрагментах 1, 4 и 128 байтов.

В Test 2 (varying size data exchange), функция:

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

  • Отправляет данные как известную последовательность, которую он может проверить.

  • Выполняет тесты «host-to-target»:

    • Ваш компьютер разработчика отправляет данные в фрагментах 128 байт, а ваш целевой компьютер получает данные в фрагментах 64 байта.

    • Ваш компьютер разработчика отправляет данные в фрагментах 64 байта, а ваш целевой компьютер получает данные в фрагментах 128 байтов.

  • Выполняет тесты «target-to-hoste»:

    • Ваш целевой компьютер отправляет данные в фрагменты 64 байтов, а ваш компьютер разработчика получает данные в фрагменты 128 байтов.

    • Ваш целевой компьютер отправляет данные в фрагменты 128 байтов, а ваш компьютер разработчика получает данные в фрагменты 64 байтов.

В Test 3 (receive buffer detection)функция определяет данные, которые могут храниться между вызовами rtIOStreamRecv на целевом компьютере. Функция использует итеративный процесс:

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

  2. Когда целевой компьютер просыпается, он вызывает rtIOStreamRecv для приема данных из внутреннего буфера драйвера.

  3. Функция определяет, переполнен ли внутренний буфер, проверяя на ошибки и проверяя полученные значения данных.

  4. Если нет ошибок переполнения и передаваемые данные получены правильно, функция начинает другую итерацию, выполняя шаг 1 с большей последовательностью данных.

Функция сообщает размер последнего известного хорошего буфера.

Примеры

Проверьте поведение пользовательских rtiostream Реализация интерфейса

Тестовый набор состоит из двух частей. Одной из частей тестового набора является приложение, работающее на целевом компьютере. Другой компонент запускается в MATLAB.

  1. Чтобы создать целевое приложение, скомпилируйте и связывайте эти файлы:

    rtiostreamtest.c, rtiostreamtest.h, и main.c расположены в matlabroot/ toolbox/coder/rtiostream/src/rtiostreamtest.

  2. Загрузите и запустите приложение на целевом компьютере.

  3. Чтобы запустить часть 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 ###
    

    Функция также генерирует профиль средней полосы пропускания.

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

свернуть все

Укажите транспортный протокол для канала связи:

  • 'tcp' -- TCP/IP

  • 'serial' -- RS-232 последовательный

Если connection является 'tcp', укажите имя целевого процессора. Для примера, если ваш компьютер разработчика является целевым процессором, можно задать 'localhost'.

Если connection является 'serial', задайте идентификатор последовательного порта, например 'COM1' для COM1 ", 'COM2' для COM2 и так далее.

Если connection является 'tcp', задайте номер порта TCP/IP сервера, целое число значения между 256 и 65535.

Если connection является 'serial', задайте значение baud, например, 9600.

Если вы задаете 'verbose'функция отображает сообщения, которые содержат информацию о прогрессе. Можно использовать сообщения для отладки отказов во время выполнения.

Введенный в R2013a