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 IO . Функция определяет:

  • Порядок байтов данных по целевому компьютеру.

  • Гранулярность адреса памяти.

  • Размер типов данных.

  • Ли 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 на целевом компьютере. Функция использует итеративный процесс:

  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', задайте ID последовательного порта, например, 'COM1' для COM1, ‘'COM2' для COM2, и так далее.

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

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

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

Введенный в R2013a