1
我在写一些代码,其目的是读取由ECG发送的值。 ECG通过串行连接发送由其传感器读取的值,并且(作为开始),所有程序所要做的就是读取输入并将其显示在文本视图中。Objective-C中的串行通信错误:资源繁忙
但是我已经碰了壁,似乎无法解决以下两个问题:
我碰到下面的错误很多次,我尝试与ECG连接的:无法打开/ dev/tty.usbserial.A700eLwM - :资源繁忙。 该端口未被任何其他应用程序使用,但ECG正在发送号码。 我可以以某种方式告诉操作系统:无论发生什么事,谁在使用该端口,我想完全控制端口?
我的代码如下:
fd = open("/dev/tty.usbserial-A700eLwM", O_RDWR | O_NOCTTY | O_NDELAY);
[textView insertText:[NSString stringWithFormat:@"Port status: %f\n", fd]];
if (fd == -1)
{
/*
* Could not open the port.
*/
perror("open_port: Unable to open /dev/tty.usbserial.A700eLwM - ");
}
else {
fcntl(fd, F_SETFL, 0);
}
我的第二个问题是,我不太明白,我怎么可以缓冲读入一个字符串或整型变量,并将其发送给文本视图。
任何帮助将不胜感激提前
谢谢。我会试一试。 – Zahrec 2012-01-09 12:32:10