Доступ к полудуплексному последовательному порту с POSIX - PullRequest
1 голос
/ 07 января 2009

Меня просят читать и записывать в полудуплексное последовательное соединение, используя вызовы POSIX (более конкретно, запись в C на Linux 2.6.x). У меня небольшие проблемы с поиском подробной информации об этой конкретной модели (большинство страниц сосредоточено на полнодуплексном режиме), и, когда у меня возникают небольшие аномалии при чтении, я хотел проверить, не ошибаюсь ли я здесь.

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

Итак, мой код пишет () в порт всякий раз, когда нужно что-то отправить. Если эти данные приводят к ответу (что-то, что я знаю заранее), я просто читаю (). Я не вызываю никаких специальных функций, но, может быть, мне следует? И правильный ли этот подход? То есть напиши когда строка свободна?

1 Ответ

0 голосов
/ 07 января 2009

Я бы прочитал исходную документацию по ядру Linux, там может быть текстовый файл о последовательном драйвере; если нет, вы можете прочитать действительный код драйвера, чтобы увидеть, что он делает (это не так страшно, как кажется, я обещаю!)

...