2015-05-19 2 views
0

Я хочу знать, является ли драйвер устройства ядра Linux устройством последовательного порта, например./dev/tty1,/dev/tty2, поддержка функции poll()? Или скажите, где исходный код ядра устройства последовательного порта?Поддерживает ли сервер последовательного порта Linux функцию poll()?

В моем случае некоторые датчики будут отправлять данные в процессор ARM через последовательный порт каждую секунду. И я думаю, что один из способов - использовать таймер для периодического чтения из последовательного порта. Другой способ должен использовать poll(), читать его, когда данные готовы.

+2

'select()' * определенно * работает для блокировки, пока данные не будут готовы к серийному устройству. –

+0

Альтернативой является использование потоков: один читает, один пишет. – RTLinuxSW

+1

простой ответ: ДА :-) – Klaus

ответ

2

Если ваш последовательный порт не является специальным чехлом, то с помощью poll() или select() будет легко работать.

Если ваш последовательный порт управляется через USB, вам нужно будет позаботиться о том, что произойдет, если USB-порт будет отключен, но это не похоже на вас.

Смежные вопросы