Я пытаюсь научиться писать код C, который будет считываться из последовательного порта в Linux. Я нашел то, что кажется хорошим учебником here.Подключение последовательного порта между хостом и гостем с помощью Virtualbox
Я хочу, чтобы иметь возможность протестировать этот код, поэтому я думаю, что мне нужен либо последовательный порт, либо способ записи на последовательный порт, пока читается код сверху.
Я запускаю Ubuntu 10.04 как виртуальную машину на своем Mac с помощью виртуального бокса. Моя идея состояла в том, чтобы настроить виртуальное последовательное соединение и написать от хоста к гостю. Надеюсь, что-то так же просто, как cat "Hello World" > /tmp/fake_serial
в хост-терминале, и для этого читать программу по ссылке выше.
Возможно ли это? Я попытался добавить последовательный порт с помощью виртуального окна, и когда я попытаюсь выполнить приведенную выше команду, я получаю сообщение об ошибке, что я не могу записать в сокет.
Второй вариант, о котором я думал, использовал в гостевой ОС что-то вроде minicom
, чтобы подключиться, чтобы сказать /dev/ttyS1
, и писать сообщения для моего кода для чтения в одно и то же время. Опять же, если предположить, что скорость передачи и другие настройки в порядке, возможно ли это?
У меня нет большого опыта работы с последовательными портами, поэтому я буду благодарен за любые предложения по поводу наилучшего способа сделать это. Заранее спасибо.
Спасибо. Это было именно то, что я искал: D У меня есть только один вопрос: есть ли способ использовать только одну виртуальную машину и использовать главный компьютер для записи в трубу? – webNeat
Это работает для меня до тех пор, пока я выдаю sudo с помощью команды экрана: «sudo screen/dev/ttyS0 38400» –