Менеджер последовательных 8250-совместимых каналов связи для DesignWare UART совместимых контроллеров
devc-ser8250-dw [[опции менеджера][опции библиотеки io-char] [порт[^сдвиг][,прерывание]]]... &
ЗОСРВ
«Нейтрино»
редакции 2024
115200
).0
).0
до 5
Сдвиг - целое число, смещение относительно начала BAR'а в байтах. ЗОСРВ
«Нейтрино»
редакции 2024
1
, 4
, 8
или 14
), передаваемых при каждом прерывании на передачу. Значение по умолчанию – 0
(FIFO выключен).1
, 4
, 8
или 14
) для срабатывания прерывания по получению данных. Значение по умолчанию – 0
(прерывания не инициируются)./dev/ser
). Значение по умолчанию – 1
; дополнительным устройствам присваиваются номера в порядке возрастания.ЗОСРВ
«Нейтрино»
редакции 2024
0x
) или десятичным числом (если префикс отсутствует).Поддерживаемые опции можно найти в статье Опции io-char.
ЗОСРВ «Нейтрино»
aarch64, armv7, mips
![]() | Для запуска этого драйвера необходимо войти в систему под учетной записью root. |
Драйвер devc-ser8250-dw является небольшой программой для администрирования устройств с последовательным интерфейсом в ЗОСРВ «Нейтрино». Он может работать с любым числом последовательных портов, использующих микросхемы серии 8250, 14450 или 16550. Каждому устройству может быть назначено собственное прерывание, либо устройства могут совместно использовать одно прерывание при условии, что аппаратные средства поддерживают режим разделения прерываний.
![]() | Драйвер может работать с универсальными асинхронными приемопередатчиками (UART), совместимыми с устройствами 8250. |
Приоритет драйвера устройств с последовательным интерфейсом приводится в соответствие с приоритетом клиента. Все внутренние события обрабатываются с приоритетом 24 (соответствует приоритету внутренней обработки импульсов). Приоритет обработки событий жестко запрограммирован и не может устанавливаться ни одной из перечисленных опций. (Для изменения приоритета требуется изменение программы main.c драйвера.)
При взаимодействии драйвера с клиентским приложением он работает с приоритетом клиента. Вся остальная обработка выполняется либо с приоритетом 24r, либо по прерыванию.
Каждому устройству присваивается имя в пространстве путевых имен /dev/sern
, где n принимает значения в порядке возрастания, начиная с 1, которое можно изменить с помощью опции -u. Результат использования последовательных PC-портов по умолчанию:
Устройство | Порт | Прерывание |
---|---|---|
/dev/ser1 | 3f8 | 4 |
/dev/ser2 | 2f8 | 3 |
![]() | Если в приложении используется консоль /dev/console , следует создать ее привязку к одному из устройств (/dev/ser1 , /dev/ser2 , ...) путем добавления в файл построения образа, используемый в команде mkifs подобной строки:
[type=link] /dev/console = /dev/ser1 |
Полное управление всеми устройствами осуществляется с использованием прерываний, и по умолчанию устройства поддерживают стандартное аппаратное управление обменом данными на входе и выходе (RTS/CTS). Это управление можно деактивировать с помощью опции -F.
![]() | В редактируемом режиме аппаратное управление обменом данными не поддерживается. |
По умолчанию запрос на чтение выдается при доступности по крайней мере одного символа. Для повышения эффективности можно использовать три параметра, управляющие ответами на запросы на чтение:
![]() | Если значение Min превышает размер входного буфера, оно уменьшается до размера буфера. Для предотвращения такой ситуации размер входного буфера можно изменить с помощью опции -I. |
Эти параметры устанавливаются с помощью библиотечных подпрограмм (см. tcgetattr(), tcsetattr(), readcond() и TimerTimeout()).
Менеджер последовательных портов поддерживает режим необработанных входных данных и редактируемый режим, то есть действует как реальный терминал ввода-вывода.
В структуре termios поддерживаются следующие поля и флаги:
Поле | Поддерживаемые флаги |
---|---|
c_cc | Все символы |
c_iflag | BRKINT ICRNL IGNBRK IXON |
c_oflag | OPOST |
c_oflag | CLOCAL CSIZE CSTOPB PARENB PARODD |
c_lflag | ECHO ECHOE ECHOK ECHONL ICANON IEXTEN ISIG NOFLSH |
Запуск администратора devc-ser8250-dw:
devc-ser8250-dw &
Запуск администратора devc-ser8250-dw, устанавливается скорость 38400 вместо скорости по умолчанию 115200:
devc-ser8250-dw -b 38400 &
Запуск администратора devc-ser8250-dw с пятью портами (для последних четырех портов установлена скорость 38400 бод):
devc-ser8250-dw 3f8,4 -b 38400 280,3 288,3 290,3 298,3 &
Можно указать несколько опций -F и -f; действие этих опций зависит от их расположения и распространяется на указанный после них последовательный порт:
devc-ser8250-dw -F 3f8,4 -f 2f8,3 &
Базовые подсистемы ЗОСРВ «Нейтрино», Драйверы
ЗОСРВ
«Нейтрино»
редакции 2024
Предыдущий раздел: Драйверы