read / dev / ttyUSB0 falhou?

0

Eu tenho um dispositivo GPS conectado a / dev / ttyUSB0 Eu escrevi um código simples para ler os dados dele, mas a leitura sempre falha Eu não tenho idéia de onde o problema é este é o meu código você poderia por favor me ajude:). / p>

#include<iostream>
#include<fstream>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <termios.h>

using namespace std;
int read_port(void) 
{
int fd;
fd = open("dev/ttyUSB0" , O_RDWR | O_NOCTTY | O_NDELAY);
if (fd ==-1) 
{
    perror("open_port: Unable to open /dev/ttyUSB0 - ");

}

   char buffer[32];
    int n = read(fd, buffer, sizeof(buffer));
    if (n < 0)
        fputs("read failed!\n", stderr);
    return (fd);
}

int main()
{
     read_port();
}
    
por Zeyad 07.05.2013 / 11:37

1 resposta

1

Eu assumo porque você está perdendo um / na frente de dev ?

fd = open("/dev/ttyUSB0" , O_RDWR | O_NOCTTY | O_NDELAY);

Se eu fosse você, eu faria uma variável para isso

/dev/ttyUSB0 

Dessa forma, o open e o error podem mostrar o mesmo nome de arquivo. Economiza confusão.

    
por Rinzwind 07.05.2013 / 11:41