Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Perl: Системное программирование > Работа с com-портами под FreeBSD |
Автор: Алексаандр 2.8.2005, 12:23 | ||||
Я раньше не связывался с FreeBSD, но работал с com портами под windows на delphi. там все просто - открываешь файл Com1 и работашь с ним, почти как с обычным файлом. Но в FreeBSD целых шесть виртуальных устройств для порта: /dev/ttyd? for callin ports /dev/ttyid? /dev/ttyld? corresponding callin initial-state and lock-state devices /dev/cuaa? for callout ports /dev/cuaia? /dev/cuala? corresponding callout initial-state and lock-state devices И с которым из них спрашивается надо работать? Я соединил два com порта у компьютера и пытаюсь переслать из одного в другой данные. Текст программы-передатчика:
Текст програмы-приемника:
Никаких ошибок не выдается, но и не работает. Что я делаю не так? |
Автор: Алексаандр 3.8.2005, 11:52 | ||||
Уже разобрался ![]() работает вот так: Приемник:
Передатчик:
Но для чего в FreeBSD 6 устройств на каждый порт я все-еще не понял. |
Автор: study 15.8.2005, 10:52 | ||
А зачем в скрипт-приемник
|
Автор: chaos 15.8.2005, 11:05 |
он там вообще не используетсЯ ![]() |
Автор: study 15.8.2005, 11:07 | ||
я не пойму, почему передатчик открываем так вот:
|
Автор: chaos 15.8.2005, 11:26 | ||||
плохо что не знаешь вот тебе Filename Read Write Append Create Trunc O_flags Char < file yes no no no no RDONLY "r" > file no yes no yes yes WRONLY TRUNC CREAT "w" >> file no yes yes yes no WRONLY APPEND CREAT "a" +< file yes yes no no no RDWR "r+" +> file yes yes no yes yes RDWR TRUNC CREAT "w+" +>> file yes yes yes yes no RDWR APPEND CREAT "a+" |
Автор: study 15.8.2005, 11:42 |
блин, лохонулся ![]() |
Автор: study 15.8.2005, 11:54 | ||
Что-то у меня приемник не работает... не может с порта считать информацию, зависает по-моему в этом цикле:
PS: тестирую по Linux |
Автор: study 15.8.2005, 17:32 |
Народ помогите разобраться с ком портом, очень надо... Этот пример у меня не работает под linux, подскажите что исправить ![]() |