Я пишу некоторый код, целью которого является чтение значений, отправленных ЭКГ.ЭКГ передает значения, считанные датчиками, через последовательное соединение, и (для начала) все, что нужно сделать программе, - это прочитать ввод и отобразить его в виде текста.
Однако я ударил стену и могуКажется, я не решаю следующие две проблемы:
Я часто получаю следующую ошибку при попытке подключиться к ЭКГ: Невозможно открыть /dev/tty.usbserial.A700eLwM -: Ресурс занят .Порт не используется никакими другими приложениями, но ЭКГ отправляет номера.Могу ли я как-то сообщить ОС, что бы ни происходило и кто бы ни использовал этот порт, я хочу иметь полный контроль над этим портом?
Мой код выглядит следующим образом:
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);
}
Моя вторая проблемаЯ не совсем понимаю, как я могу буферизовать чтение в строковую или целочисленную переменную и отправить его в текстовое представление.
Любая помощь будет оценена
Заранее спасибо