【问题标题】:Swift 3 ORSSerialPort read from arduino从 arduino 读取的 Swift 3 ORSSerialPort
【发布时间】:2017-04-07 15:43:06
【问题描述】:

所以我正在尝试使用 ORSSerialPort 库读取一些 arduino 输出。 如果我使用名为 ORSSerialPortDemo 的 lib 示例代码,一切正常。 现在我在演示中唯一想念的是他们如何在 viewController 中使用 SerialPortDemoController.swift。

我创建了一个标准项目,其中包含 ViewController.swift。 桥头导入完成,所有引用都编译。 但我喜欢在代码中设置它们,而不是使用 GUI 来选择 USB 端口和波特率。

类似这样的:

var serial: SerialPortDemoController?
serial = SerialPortDemoController()
serial.path = "dev/cu.usbserial-A6006hPS"
serial.baudRate = 9600
serial.open()

然后我只需要从端口读取。这应该已经工作了,函数:func serialPort(_ serialPort: ORSSerialPort, didReceive data: Data)? 所以在这个函数中我可以做这样的事情:

if let string = NSString(data: data, encoding: String.Encoding.utf8.rawValue) 
{
    print(string)
}

我环顾四周,但似乎没有任何效果。如果有人能指出我正确的方向,那就太好了。

谢谢!

【问题讨论】:

  • 我敢打赌,路径必须以斜杠开头:serial.path = "/dev/cu.usbserial-A6006hPS"
  • 可能是这样,但我的问题更多是关于如何使用ORSSerialPort lib。

标签: swift macos swift3 arduino orsserialport


【解决方案1】:

您是否有正确的串行端口设置,即。 RTS、DTR、CTS、DSR 和 DCD 引脚?

发件人:https://www.arduino.cc/en/Serial/Begin 默认为8个数据位,无奇偶校验,1个停止位。

是的。端口以“/”开头,即。 "/dev/cu.usbserial-A6006hPS"

来自文档 http://cocoadocs.org/docsets/ORSSerialPort/1.5.1/

使用 ORSSerialPortManager 很简单。获取共享串口管理器:

可可码:

ORSSerialPortManager *portManager = [ORSSerialPortManager sharedSerialPortManager];

获取可用端口列表:

NSArray *availablePorts = portManager.availablePorts;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-18
    • 1970-01-01
    相关资源
    最近更新 更多