FIFO Read

Чтение простых потоков данных

  • Библиотека:
  • Simulink Real-Time/ RS232

  • FIFO Read block

Описание

Блок FIFO Read является стороной чтения пары чтения/записи FIFO. Вы используете этот блок для анализа простых потоков данных. Блок функционирует в двух режимах, которые вы устанавливаете с помощью флажка Read to delimiter.

  • Если установлен флажок Read to delimiter, блок считывает только элементы, если указанный разделитель был записан в FIFO Write блок. Если разделитель найден, блок возвратов элементы до разделителя в векторе выхода включительно. Если разделитель не найден, блок возвращает вектор нулевой длины, как определяется типом данных. (Если у вас есть вектор нулевой длины, можно заставить модель выполнить конкретную операцию или проигнорировать случай.)

  • Если снять флажок Read to delimiter, блок возвращает элементы между Minimum read size и меньшим количеством элементов в настоящее время в FIFO и Maximum read size.

    При выполнении чтения ASCII установите флажок Read to delimiter. При выполнении двоичных чтений снимите этот флажок.

Вот несколько примеров того, как можно настроить блок FIFO Read:

  • Передающая сторона стандартной программы обработки прерывания - если причина прерывания не является пустым аппаратным FIFO в UART, максимальный входной порт получает значение 0. Если аппаратный FIFO пуст, он получает размер аппаратного FIFO. Минимальный входной порт получает постоянное значение 1.

  • Сторона приема стандартной программы прерывания - Типичный случай с данными ASCII имеет минимальный и максимальный входные порты отключены. Установлен флажок Read to delimiter parameter, и параметр Delimiter имеет значение возврата каретки или подачи линии. Значение параметра Maximum read size велико (по порядку размера FIFO), и значение параметра Minimum read size равняется 1. В этой форме драйвер действует как неблочная линия чтения.

    Альтернативное строение приемной стороны для двоичных блоков данных с фиксированной длиной имеет значение параметров Maximum read size и Minimum read size, установленное на фиксированную длину блока. Параметр Read to delimiter не выбран.

Для комплексных данных потоков рассмотрите использование блоков FIFO Read HDRS и FIFO Read Binary. Инструкции по использованию этих блоков см. в разделе RS-232 FIFO Read Blocks.

Порты

Вход

расширить все

Подключается к программному FIFO, содержащему данные, считанные с последовательного порта.

Максимальное количество байтов для возврата из блока.

Зависимость

Чтобы сделать этот порт видимым, установите Max and Min read size ports параметра.

Минимальное количество байтов для возврата из блока.

Зависимость

Чтобы сделать этот порт видимым, установите Max and Min read size ports параметра.

Выход

расширить все

Вектор, содержащий проанализированные данные, считанные из FIFO.

Зависимость

Чтобы определить тип данных этого вектора, установите Output vector type параметра.

Типы данных: int8 | uint8 | int16 | uint16 | int32 | uint32

Передает значение порта MAX до блока, который читает ENA порт.

Зависимость

Чтобы сделать этот порт видимым, установите параметры Max and Min read size ports и Enable passthrough.

Параметры

расширить все

Задайте максимальное количество символов для возврата этого блока. Получившийся размер вектора на один больше, чем это максимальное количество символов. Этот блок указывает количество символов, возвращаемых при использовании дополнительного элемента как:

  • Нулевой терминатор строки для 8-битных типов данных

  • Количество символов для 16-битного и 32-битного типов данных

Введите достаточно большое число. Если это число слишком маленькое, блок не может ничего вернуть. Для примера, если вы вводите значение 10, но при выполнении FIFO содержит 11 символы плюс null terminator, блок не возвращает никаких символов. Если FIFO содержит 5, блок возвращается 5 символы плюс null terminator.

Если вы выбираете Max and Min read size ports параметра, блок интерпретирует входное значение порта MAX как максимальное количество возвращаемых символов. Фактическое максимальное количество символов для возврата меньше значения на порте MAX и максимальный размер чтения в параметрах блоков. Используйте это значение в двоичном режиме, когда вы не установили флажок Read to delimiter.

Программное использование

Параметры блоков: maxsize

Введите наименьший размер чтения в байтах. FIFO должен содержать по крайней мере это количество элементов до возврата элементов.

Если вы выбираете Max and Min read size ports параметра, значение порта MIN заменяет это значение.

Программное использование

Параметры блоков: minsize

Установите этот флажок, чтобы включить возврат наборов элементов, которые заканчиваются с Delimiter значением. Используйте этот параметр при работе с символьными элементами.

Программное использование

Параметры блоков: usedelimiter

Введите десятичное значение для 8-битного входного терминатор строки. Этот параметр задает значение, на котором заканчивается операция считывания FIFO. Это значение работает с параметром Read to delimiter. По умолчанию этот блок ищет возврат каретки. Он возвращает символы только тогда, когда один найден. Для ссылки значение возврата каретки 13 и подача линии 10.

Программное использование

Параметры блоков: delimiter

8-битные типы данных генерируют NULL-оконечный символьный вектор в выход векторе. Для 16-битных и 32-битных типов данных первый элемент содержит количество элементов, которые ожидаются в остальной части выходного вектора.

Программное использование

Параметры блоков: outputtype

При установке этого флажка:

  • Значение от входного порта MAX - максимальное количество символов, удаляемых из FIFO. Если это число превышает значение Maximum read size, блок игнорирует значение от максимального входного порта. Значение Maximum read size принимается за максимальное количество символов, удаляемых из FIFO.

  • Значение от входа порта MIN - минимальное количество символов, которое должно содержать FIFO перед возвратом элементов. Это значение заменяет набор значений параметром Minimum read size.

Эта настройка делает входные порты MAX и MIN виден.

Программное использование

Параметры блоков: enable

Установите этот флажок, чтобы передать значение входа порта MAX до выходного порта ENA.

Зависимость

Приводит к установке выходного ENA чтобы стать видимым.

Программное использование

Параметры блоков: enableout

Введите базисный шаг расчета или несколько значений базисного шага расчета. -1 означает, что шаг расчета наследуется.

Программное использование

sampletime

Примеры моделей

Введенный в R2020b