私は、いくつかの XBee を使用した私の小さなプロジェクトにかなり長い間取り組んできました。これまで、すべてのコードがテストされ、UBUNTU-SERVER 10.04 LTS で動作しており、シリアル USB シミュレーション/変換にlibftdiライブラリを使用しています。
今週の初めに、同じライブラリ バージョンのlibftdiを使用して、kubuntu 12.04 make を使用してラップトップでまったく同じコードを使用しようとしました。
問題は、Satellite L755 - 18K ラップトップで、 /dev/ttyUSB0にあるXBee デバイスを開こうとするたびに、「Bad file descriptor」が表示されることです。からのログメッセージからdmesg、デバイスはまったく正常に登録されており、指を置くことができないようです。
これは、デバイスを開くために使用されるコードの一部です。
cfmakeraw(&tio);
cfsetospeed(&tio,B9600); // 9600 baud
cfsetispeed(&tio,B9600); // 9600 baud
tio.c_cc[VMIN]=0;
tio.c_cc[VTIME]=10;
serial_fd=open("/dev/ttyUSB0", O_RDWR);
tcsetattr(serial_fd,TCSANOW,&tio);
if (serial_fd < 0){
cout << "Error while opening device... " << "errno = " << errno << endl;
printf("Something went wrong with open()! %s\n", strerror(errno));
exit(1);
}
この件に関するご意見は大歓迎です。
よろしく