问题标签 [orsserialport]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
168 浏览

swift - ORSSerialPort.send 不发送任何内容

我是新的(非常新的!!)快速和散乱的让我的用户界面通过串行端口发送一个字符串。我已经设法打开端口并读取/解析传入的流量,但是在发送字符串时,什么都没有发送。

我需要做的是输入sendTextField和当按下SendButton将字符串发送到串口。此外,当我打印data我想通过串口发送的内容时,它会打印我尝试发送的字节数(即 5 个字节)。这不应该是我尝试发送到串行端口的字符串“Hello”吗?

我正在使用 Xcode 版本 11.2 (11B52) 和 Swift 5。

任何帮助将不胜感激。先感谢您!

这就是我调用“发送”函数的方式:

我的主要程序如下:

0 投票
0 回答
380 浏览

swift - 使用串行 Swift 到 Arduino

对于我的学校项目,我想创建一个使用串行连接与我的 Arduino 通信的 MacOS 应用程序。我尝试了 2 个不同的库(SwiftSerial 和 ORSSerialPort)。两者都没有成功。可能是因为我是 Swift 的初学者。

我决定继续,ORSSerialPort因为我可以找到有关此库的更多信息。不是很多,但比 SwiftSerial 更多。

所以问题是:如果我创建ORSSerialPort对象,它认为我的参数不是通过构造函数 (init()) 来的。因为当我尝试读取对象中的变量时,我得到一个零。即使我这样做: port?.baudRate = 9600 波特率保持为零。

这是我的代码:

ViewController.swift

SerialParser.swift

我的输出

0 投票
0 回答
57 浏览

swiftui - 将 ORSSerialPort 库与 Combine 和 SwiftUi 一起使用。尝试订阅 Key-Value Observing(KVO) 对象时出现问题

我正在尝试将 ORSSerialPort 框架与 Combine 集成到 SwiftUi 中。ORSSerialPort GitHub

ORSSerialPort 实现 Key-Value Observing (KVO) 和委托模式。在他的示例中,他使用了委托模式和 UIKit。我将使用 Combine 和 SwiftUI。不是委托模式。

因为 ORSSerialPort 是一个 KVO 对象,所以应该可以订阅 ORSSerialPort 变量,但她是我的问题。不起作用。我不知道为什么。

我尝试什么:

发布者总是被触发一次,那就是由 init 触发。如果我用我的函数关闭并打开端口,它将不会再次触发。

对于调试,我尝试使用 Stream。而且我会再次看到发布者总是只会触发一次。但港口正在关闭和开放。

我的演示代码

0 投票
1 回答
103 浏览

swift - ORSSerialPort 与 Arduino

我一直在尝试编写一个 Xcode 接口来与我的 Arduino Mega 通信。但整个事情并没有像预期的那样工作。我用 ORSSerialPort 完成了整个工作。

在 Xcode 项目中,我为 swift 文件 ViewController.swift 编写了这个:

我在 Arduino mega 上加载了这段代码:

不幸的是它不起作用,我不知道为什么。

0 投票
1 回答
67 浏览

swift - 无法从 ORSSerialPort 接收数据

我正在尝试使用 ORSSerialPort 向串行端口发送和接收数据。

我在这里遵循示例,但我使用的是命令行应用程序: https ://github.com/armadsen/ORSSerialPort/tree/master/Examples/ORSSerialPortDemo

我相信我复制/实现了所有必需的方法,但问题是虽然我可以将数据发送到我的串口(我从串口日志中双重确认并且发送成功),但我无法接收任何内容。

我的代码非常简单,如下所示——它只是一个原型,所以代码可能设计得不好。

那么我是否遗漏了无法从串口接收数据的任何内容?任何建议表示赞赏。

0 投票
1 回答
45 浏览

swift - SwiftUI 中的 ORSSerialPort.send 无法连接

我想从 Mac 向带有 ORSserial 的 Arduino 发送一个字节。当我使用 ORSSerialPort 终端演示代码时,框架、硬件和 Arduino 代码工作。它连接并发送一个字节,完美地点亮 Arduino tx/rx 和输出 LED。但是,当我使用 ORSSerial 和 SwiftUI 做同样的事情时,它根本不会点亮任何 LED。我尝试将类实例化放在不同的位置,并将设置/打开代码放在初始化之外的函数中,甚至使用按钮回调。到目前为止仍然不能在 SwiftUI 中工作。我是 swift 和 swiftui 的新手,所以我的代码中可能存在可怕的错误,但就是这样。欢迎所有建议/批评,谢谢。

0 投票
0 回答
32 浏览

swift - 从 ORSerialPort 接收数据后如何立即终止程序?

昨天,我看到了这个关于无法从 ORSSerialPort 接收数据的问题。一个解决方案是RunLoop.main.run()在调用后立即添加mySerial.SendString(data: "test")。但是,这将使程序永远运行。如果我希望程序在收到数据后立即终止,我该怎么做?谢谢