Objective-C Последовательный - Mac OS X В настоящее время я запускаю followin в Terminal для отправки команды через последовательный порт USB. /Users/drummerboyx/Library/Scripts/arduino-serial -b 9600 -p /dev/tty.usbserial-A800ev0Z -s 1 Есть ли способ сделать это в Objective-C? Ответ 1 Некоторые google-fu нашли: Последовательная связь Cocoa Framework (на arduino.cc!) AMSerialPort Я почти ничего не знаю об этом, но имя "IOKit" также звучит довольно многообещающе... Ответ 2 ORSSerialPort - это более новая, более простая в использовании альтернатива AMSerialPort. Использование ORSSerialPort для открытия порта и отправки данных может быть таким же простым, как это: ORSSerialPort *serialPort = [ORSSerialPort serialPortWithPath:@"/dev/cu.KeySerial1"]; serialPort.baudRate = [NSNumber numberWithInteger:4800]; [serialPort open]; [serialPort sendData:someData]; // someData is an NSData object [serialPort close]; Ответ 3 Если вы просто хотите запустить эту команду из своего кода, вы можете использовать функцию system: #include <stdio.h> #include <stdlib.h> system("/Users/drummerboyx/Library/Scripts/arduino-serial -b 9600 -p /dev/tty.usbserial-A800ev0Z -s 1"); Вам нужно установить расширение файла исходного кода Objective-C на .mm, которое сообщает Xcode скомпилировать его как Objective-C ++. Ответ 4 Если вы хотите придерживаться Cocoa - посмотрите NSTask.
Ответ 1 Некоторые google-fu нашли: Последовательная связь Cocoa Framework (на arduino.cc!) AMSerialPort Я почти ничего не знаю об этом, но имя "IOKit" также звучит довольно многообещающе...
Ответ 2 ORSSerialPort - это более новая, более простая в использовании альтернатива AMSerialPort. Использование ORSSerialPort для открытия порта и отправки данных может быть таким же простым, как это: ORSSerialPort *serialPort = [ORSSerialPort serialPortWithPath:@"/dev/cu.KeySerial1"]; serialPort.baudRate = [NSNumber numberWithInteger:4800]; [serialPort open]; [serialPort sendData:someData]; // someData is an NSData object [serialPort close];
Ответ 3 Если вы просто хотите запустить эту команду из своего кода, вы можете использовать функцию system: #include <stdio.h> #include <stdlib.h> system("/Users/drummerboyx/Library/Scripts/arduino-serial -b 9600 -p /dev/tty.usbserial-A800ev0Z -s 1"); Вам нужно установить расширение файла исходного кода Objective-C на .mm, которое сообщает Xcode скомпилировать его как Objective-C ++.