Linux C ++ записывает строку в COM-порт, читает ответный ответ? - PullRequest
1 голос
/ 30 марта 2012

Я пытаюсь записать в порт / dev / ttyACM0. В командной строке я могу записать строку «: 35 \ n» в датчик, который я подключил к этому порту, и через прослушивание порта через замазку я вижу, что он отвечает и дает мне данные, которые я запрашиваю (компас данные).

Я хочу написать драйвер на C ++, который записывает эту строку в этот порт и считывает возвращаемый ответ. Я посмотрел онлайн, но мне не удалось написать это. Я чувствую, что это должно быть легкой задачей. Я не думаю, что запись в порт ttyACM будет отличаться от записи в порт ttyCOM или ttyS. Кто-нибудь может дать мне пример этого? Я не думаю, что это будет более 5 строк кода.

Спасибо за любую помощь.

1 Ответ

3 голосов
/ 30 марта 2012

По запросу, пять строк кода:

#include <fstream>
std::fstream file("/dev/ttyACM0");
file << ":35" << std::endl; // endl does flush, which may be important
std::string response;
file >> response;
...