Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective-C串行-Mac OS X_Objective C_Cocoa_Macos_Arduino - Fatal编程技术网

Objective-C串行-Mac OS X

Objective-C串行-Mac OS X,objective-c,cocoa,macos,arduino,Objective C,Cocoa,Macos,Arduino,我目前正在运行followin终端,通过USB串行总线发送命令 /Users/drummerboyx/Library/Scripts/arduino-serial -b 9600 -p /dev/tty.usbserial-A800ev0Z -s 1 在Objective-C中有这样做的方法吗?如果您只想从代码中运行该命令,可以使用以下函数: #include <stdio.h> #include <stdlib.h> system("/Users/drummerbo

我目前正在运行followin终端,通过USB串行总线发送命令

/Users/drummerboyx/Library/Scripts/arduino-serial -b 9600 -p /dev/tty.usbserial-A800ev0Z -s 1

在Objective-C中有这样做的方法吗?

如果您只想从代码中运行该命令,可以使用以下函数:

#include <stdio.h>
#include <stdlib.h>

system("/Users/drummerboyx/Library/Scripts/arduino-serial -b 9600 -p /dev/tty.usbserial-A800ev0Z -s 1");
#包括
#包括
系统(“/Users/drummerboyx/Library/Scripts/arduino serial-b9600-p/dev/tty.usbserial-A800ev0Z-s1”);

您需要将Objective-C源代码文件扩展名设置为.mm,这将告诉Xcode将其编译为Objective-C++

如果你想坚持吃可可粉,请看一看。

一些google fu发现:

  • (在arduino.cc上!)
我对它几乎一无所知,但它的名字听起来也很有希望……

是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];

是的,但是有没有一种不用运行系统命令就能做到这一点的方法呢?谢谢你的提示,这看起来像是一个更干净的库!您键入了
serialPortWithPath:
,您说的是
serialPortWithPath:
,您在方法名称中添加了一个额外的with。注意:如果您想支持基于PowerPC的Mac,您(很遗憾)不能使用ORSSerialPort。